Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL
MySQL
  1. MySQL เก็บค่าจาก SELECT ไปใน User Variable (@variable)

    กำหนดค่า User Variable จาก SELECT Statement MySQL รองรับ User-Defined Variables (@var_name) เก็บค่าจาก Query ได้ 2 วิธี วิธีที่ 1: SET ... = (SELECT ...) CREATE TABLE DemoTable631 ( StudentId INT NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentName VARCHAR(100) ); INSERT INTO DemoTable631(Stud

  2. MySQL แสดง Histogram ด้วยดอกจัน (*) รองรับค่าลบ

    สร้าง Histogram Text-based ใน SQL รองรับค่าลบ ใช้ REPEAT() สร้างดอกจัน, RPAD() เติม Space, REVERSE() กลับด้านสำหรับค่าลบ ตัวอย่าง: Histogram ด้วยค่าบวกและลบ CREATE TABLE DemoTable632 ( histogramId INT NOT NULL AUTO_INCREMENT PRIMARY KEY, histogramValue INT, histogramImage TEXT ); INSER

  3. MySQL DELETE ระบุ EmployeeId เฉพาะ Record ที่ต้องการลบ

    คำสั่ง DELETE พร้อม WHERE Clause ใช้ DELETE FROM table WHERE condition เพื่อลบเฉพาะ Record ที่ตรงเงื่อนไข ตัวอย่าง: ลบพนักงาน EMP-1002 CREATE TABLE DemoTable615 ( EmployeeId VARCHAR(100), EmployeeName VARCHAR(100) ); INSERT INTO DemoTable615 VALUES (EMP-101, Adam), (EMP-1001, David), (EMP-

  4. MySQL รวมค่าคอลัมน์ที่มี Currency Sign (€) ด้วย REPLACE และ SUM

    ทำความสะอาดข้อมูลก่อน Aggregate: ลบ Currency Symbol เมื่อคอลัมน์เก็บราคาเป็น String ที่มี Currency Sign (€, $, ฿, USD) ต้องลบ Sign ออกก่อนจึงจะ SUM ได้ ตัวอย่าง CREATE TABLE DemoTable616 (Price VARCHAR(100)); INSERT INTO DemoTable616 VALUES (€200.00), (€300.00), (€500.00); Query: ลบ € แล้ว SUM SE

  5. MySQL SELECT ข้าม 2 แถว แสดง 1 แถว (Skip Rows Pattern)

    ใช้ OFFSET และ LIMIT สำหรับ Skip Pattern เมื่อต้องการ Select แถวที่ n, n+3, n+6... (ข้าม 2 แถว แสดง 1 แถว) ใช้ OFFSET และ LIMIT ใน Subquery ตัวอย่าง: เรียง DESC แล้วข้าม 2 แถว แสดง 5 แถว CREATE TABLE DemoTable617 ( Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName VARCHAR(100) ); INSER

  6. MySQL ดึงข้อมูลที่เรียงแล้วหลังจากข้าม Limit offset (Pagination)

    ใช้ Subquery สำหรับ Pagination แบบ Custom เมื่อต้องการข้อมูลที่เรียงแล้ว แต่เริ่มจาก Offset ที่กำหนด (ไม่ใช่หน้าแรก) ใช้ Subquery เพื่อ Filter ก่อน แล้วค่อย Sort/ Limit ตัวอย่าง: ข้าม 4 แถวแรก แล้วเอา 4 แถวถัดไป เรียง DESC CREATE TABLE DemoTable618 ( StudentId INT NOT NULL AUTO_INCREMENT PRIMAR

  7. MySQL หารค่าสองคอลัมน์ แสดงผลในคอลัมน์ใหม่

    คำนวณทางคณิตศาสตร์ระหว่างคอลัมน์ใน SELECT MySQL รองรับ Arithmetic Operators (+, -, *, /, %) ใช้ใน SELECT ได้โดยตรง ตัวอย่าง: หาร FirstNumber / SecondNumber CREATE TABLE DemoTable719 (FirstNumber INT, SecondNumber INT); INSERT INTO DemoTable719 VALUES (20, 10), (500, 50), (400, 20); Query: SELECT

  8. MySQL INSERT INTO ... SELECT คัดลอกข้อมูลระหว่างตาราง

    คัดลอกข้อมูลจากตารางหนึ่งไปอีกตารางด้วย INSERT ... SELECT Syntax มาตรฐานที่รองรับในทุก Version: INSERT INTO target_table (col1, col2, ...) SELECT col1, col2, ... FROM source_table WHERE condition; ตัวอย่างเต็ม -- ตารางต้นทาง CREATE TABLE DemoTabe1 (Marks INT); INSERT INTO DemoTabe1 VALUES (68), (89

  9. ตำแหน่ง MySQL bin Directory ใน Windows (MySQL 8.0)

    Default Installation Path สำหรับ MySQL 8.0 บน Windows ตำแหน่งมาตรฐานเมื่อติดตั้ง MySQL 8.0 บน Windows: C:\Program Files\MySQL\MySQL Server 8.0\bin โครงสร้างโฟลเดอร์ C: └── Program Files └── MySQL └── MySQL Server 8.0 ├── bin ← ไฟล์ Executable สำคัญอยู่ที่นี่

  10. การจัดกลุ่มข้อมูลด้วย GROUP BY และดึงค่าล่าสุดด้วย MAX() ใน MySQL

    ปัญหา เมื่อมีข้อมูลซ้ำในคอลัมน์ที่จัดกลุ่ม (เช่น User เดียวมีหลายแถว) และต้องการดึงเฉพาะแถวที่มีค่าล่าสุด (Latest) ตามคอลัมน์วันที่/เวลา วิธีแก้: ใช้ GROUP BY ร่วมกับ MAX() SELECT UserName, UserEmailId, MAX(UserLastPost) FROM DemoTable621 GROUP BY UserName, UserEmailId; ตัวอย่างสมบูรณ์ 1. สร้างตา

  11. MySQL สร้าง Combination ทุกคู่ของค่าจากตารางเดียว (Cross Join)

    Cross Join (Cartesian Product) สร้างทุกชุดค่าที่เป็นไปได้ ใช้ Comma Join (Implicit Cross Join) หรือ CROSS JOIN Keyword เพื่อจับคู่ทุกแถวจากทุกตารางที่ระบุ ตัวอย่าง: สร้าง Combination ของ Value1 และ Value2 CREATE TABLE DemoTable622 ( Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, Value1 INT, Va

  12. MySQL ใช้ FIND_IN_SET สำหรับ Comma-Separated Values ใน IN Operator

    ปัญหา: IN Operator ไม่รองรับ Comma-Separated String WHERE col IN (A,B,C) จะค้นหาค่า A,B,C ทั้งสตริง ไม่ใช่ 3 ค่าแยกกัน Solution: FIND_IN_SET() FIND_IN_SET(str, comma_separated_list) คืนค่า Position (1-based) ของ str ในรายการ คืน 0 ถ้าไม่เจอ ตัวอย่าง CREATE TABLE DemoTable604 ( Id INT NOT NULL

  13. MySQL จัดรูปแบบวันที่ แสดงชื่อเดือนเต็มด้วย DATE_FORMAT

    ใช้ DATE_FORMAT() จัดรูปแบบวันที่อ่านง่าย MySQL มี DATE_FORMAT(date, format) สำหรับจัดรูปแบบ Date/DateTime ตาม Pattern ที่กำหนด Format Specifiers สำคัญ Specifierความหมายตัวอย่าง %Yปี 4 หลัก2024 %yปี 2 หลัก24 %Mชื่อเดือนเต็มJanuary %mเดือน 2 หลัก01 %bชื่อเดือนย่อ 3 ตัวJan %dวัน 2 หลัก01 %eวัน (ไม่ม

  14. MySQL ORDER BY กับ EXPLAIN: วิเคราะห์ Query Plan และ Filesort

    ใช้ EXPLAIN วิเคราะห์ ORDER BY Performance EXPLAIN แสดง Execution Plan ของ Query ช่วยดูว่า MySQL ใช้ Index, Filesort, หรือ Temporary Table ตัวอย่างตาราง CREATE TABLE DemoTable606 ( Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName VARCHAR(100) ); INSERT INTO DemoTable606(FirstName) VAL

  15. MySQL Query ลบตัวเลขตัวแรก (First Digit) ด้วย SUBSTR

    ใช้ SUBSTR() หรือ SUBSTRING() ตัดตัวอักษร ฟังก์ชัน SUBSTR(str, pos) คืนค่า Substring ตั้งแต่ตำแหน่ง pos ถึงท้ายสตริง (1-based index) Syntax UPDATE table_name SET column_name = SUBSTR(column_name, 2); ตัวอย่าง: ลบหลักแรกของเลข CREATE TABLE DemoTable607 (Value VARCHAR(100)); INSERT INTO DemoTable6

  16. วิธีตรวจสอบ Foreign Key ใน MySQL Database

    ใช้ SHOW CREATE TABLE เพื่อดู Foreign Key Constraints วิธีง่ายที่สุดคือใช้ SHOW CREATE TABLE table_name\G (เพิ่ม \G เพื่อแสดงแนวตั้ง อ่านง่าย) ตัวอย่าง: สร้างตารางมี FK แล้วตรวจสอบ -- Parent Table CREATE TABLE DemoTable1 ( Id INT NOT NULL PRIMARY KEY, EmployeeName VARCHAR(100) ); -- Child

  17. MySQL หาค่าที่เกิดบ่อยที่สุด (Top N) จากตารางมี Duplicate

    หา Top N ค่าที่เกิดบ่อยที่สุดด้วย GROUP BY และ COUNT ตัวอย่าง: วิชาที่นักเรียนเลือกมากที่สุด CREATE TABLE DemoTable610 (SubjectName VARCHAR(100)); INSERT INTO DemoTable610 VALUES (MySQL), (Java), (MySQL), (MongoDB), (MySQL), (MySQL), (Java), (MongoDB), (C), (C++), (MongoDB), (MySQL), (Java), (Pyth

  18. คำนวณอายุจาก Date of Birth (DOB) ใน MySQL

    Query อายุจาก DOB: หลายวิธีและข้อควรระวัง วิธีที่ 1: ใช้ DATE_SUB / INTERVAL (ตัวอย่างในบทความ) = 16 ปี (DOB = (CURDATE() - INTERVAL 16 YEAR); หมายเหตุ: Query นี้หา เกิดภายใน 16 ปีที่แล้ว = อายุ = 16 ปี วิธีที่ถูกต้อง: คำนวณอายุจริง -- อายุปัจจุบัน (ปี) SELECT DOB, TIMESTAMPDIFF(YEAR, DO

  19. สร้างเงื่อนไขใน MySQL หลายคอลัมน์ด้วย IF() Function

    ใช้ IF() Function สร้างเงื่อนไข Conditional Logic IF(condition, true_value, false_value) ใช้ใน SELECT, WHERE, ORDER BY, SET ได้ คืนค่า true_value ถ้า condition เป็น TRUE มิฉะนั้น false_value Syntax IF(yourCondition, trueStatement, falseStatement); ตัวอย่าง: คำนวณ Result ตาม Score CREATE TABLE Demo

Total 4564 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:81/229  20-คอมพิวเตอร์/Page Goto:1 75 76 77 78 79 80 81 82 83 84 85 86 87