Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL
MySQL
  1. เร่งความเร็ว COUNT DISTINCT ใน MySQL ด้วย INDEX

    คำสั่ง COUNT(DISTINCT column) อาจช้าเมื่อข้อมูลเยอะ เพราะต้องสแกนและจัดกลุ่มค่าที่ไม่ซ้ำทั้งหมด วิธีเร่งความเร็วคือสร้าง INDEX บนคอลัมน์ที่ใช้ใน DISTINCT ตัวอย่างการใช้งาน 1. สร้างตารางพร้อม INDEX แบบ Composite mysql> create table DemoTable1905 ( -> FirstName varchar(20), -> Las

  2. รวมยอด Amount ของเดือนปัจจุบันใน MySQL ด้วย SUM และ MONTH

    การเตรียมข้อมูล INSERT INTO DemoTable1889 VALUES (2019-12-11, 500), (2019-11-11, 1000), (2018-12-04, 700), (2017-12-10, 300); วันที่ปัจจุบัน SELECT CURDATE(); +------------+ | curdate() | +------------+ | 2019-12-10 | +------------+ Sum Amount เดือนปัจจุบัน (ธันวาคม 2019) SELECT SUM(Am

  3. ตั้งค่า Boolean จาก Timestamp Column ใน MySQL ด้วย IF

    วันที่ปัจจุบัน SELECT CURDATE(); +------------+ | curdate() | +------------+ | 2019-12-10 | +------------+ การเตรียมข้อมูล INSERT INTO DemoTable1890 VALUES (2017-12-10), (2021-12-10), (2018-04-24), (2020-05-11); ตั้งค่า Boolean: เก่ากว่า 2 ปี = true CURDATE() - INTERVAL 2 YEAR, FALSE, TRUE

  4. ใช้ Regex Match ใน MySQL SELECT Statement

    Syntax: REGEXP ใน WHERE Clause SELECT yourColumnName FROM yourTableName WHERE yourColumnName REGEXP ^yourValue; ตัวอย่าง: หาชื่อขึ้นต้นด้วย Jo INSERT INTO DemoTable1892 VALUES (John), (Adam), (Jace), (Johny), (Johnson), (Jack); Regex Query SELECT FirstName FROM DemoTable1892 WHERE Firs

  5. คัดลอกแถวจากตารางหนึ่งไปอีกตารางใน MySQL ด้วย INSERT SELECT

    การเตรียมตารางต้นทาง INSERT INTO DemoTable1879 VALUES (101, Chris Brown), (102, David Miller), (103, Adam Smith); สร้างตารางปลายทาง CREATE TABLE DemoTable1880 ( ClientId INT, ClientName VARCHAR(20) ); คัดลอกข้อมูลเฉพาะ Id 101 และ 103 INSERT INTO DemoTable1880(ClientId, ClientName) S

  6. ใช้ Comparison Operator กับ Numeric String ใน MySQL ด้วย SUBSTRING

    ปัญหา: เปรียบเทียบ String ที่มีตัวเลข String Comparison ทำงานแบบ Lexicographical (ตัวอักษร): 2 -- FALSE เพราะ 1 4 ในทุกกรณี การเตรียมข้อมูล INSERT INTO DemoTable1881 VALUES (101, 5-9), (102, 2-4), (103, 4-8), (104, 7-12); เปรียบเทียบส่วนตัวเลขแรก (ก่อน Hyphen) = 4; = 4): +--------+-------

  7. ใช้ Comma ระหว่าง SELECT Statements ใน MySQL (Cross Join)

    Syntax: Comma Join = Cross Join -- Syntax 1: Comma (Implicit Cross Join) SELECT * FROM table1, table2; -- Syntax 2: Explicit Cross Join SELECT * FROM table1 CROSS JOIN table2; ทั้งสองให้ผลลัพธ์เหมือนกัน: Cartesian Product ตัวอย่าง INSERT INTO DemoTable1883 VALUES(100), (101), (102); Comma Join

  8. ใช้ IF/WHEN/ELSE/OR กับ ORDER BY FIELD ใน MySQL

    การเตรียมข้อมูล INSERT INTO DemoTable1884 VALUES(55), (97), (79), (87); Query: ใช้ OR กับ ORDER BY FIELD SELECT * FROM DemoTable1884 WHERE Marks = 98 OR Marks = 87 ORDER BY FIELD(Marks, 98, 87) LIMIT 1; ผลลัพธ์ (มีแค่ 87, 98 ไม่มีในตาราง): +-------+ | Marks | +-------+ | 87 | +----

Total 4564 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:21/229  20-คอมพิวเตอร์/Page Goto:1 15 16 17 18 19 20 21 22 23 24 25 26 27