Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL
MySQL
  1. MySQL: คำนวณเปอร์เซ็นต์คะแนนนักเรียน และเติมเครื่องหมาย %

    คำอธิบาย คำนวณเปอร์เซ็นต์จากผลรวมคะแนน 5 วิชา (เต็ม 500 คะแนน) ใช้ SUM(), ROUND(), CONCAT() ต่อเครื่องหมาย % ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง mysql> create table DemoTable ( Marks int ); Query OK, 0 rows affected (0.62 sec) การเพิ่มข้อมูล (คะแนน 5 วิชา) mysql> insert into DemoTab

  2. MySQL: ดึงเรคคอร์ดที่ทศนิยมเป็นจำนวนเต็ม (เช่น 12.00, 9.00) ด้วย FLOOR()

    คำอธิบาย ใช้ FLOOR() ปัดเศษทิ้งทศนิยม แล้วเปรียบเทียบกับค่าเดิม หากเท่ากัน แสดงว่าทศนิยมเป็น .00 (จำนวนเต็ม) ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง mysql> create table DemoTable ( Value DECIMAL(4,2) ); Query OK, 0 rows affected (0.53 sec) การเพิ่มข้อมูล mysql> insert into DemoTable val

  3. MySQL: ยกกำลังใช้ POW() หรือ POWER() ไม่ใช่ ^ (ซึ่งเป็น Bitwise XOR)

    คำอธิบาย ใน MySQL ^ คือ Bitwise XOR ไม่ใช่ยกกำลัง ต้องใช้ POW() หรือ POWER() แทน ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง mysql> create table DemoTable ( BaseValue int, PowerValue float ); Query OK, 0 rows affected (0.48 sec) การเพิ่มข้อมูล mysql> insert into DemoTable values(4, 1.9

  4. MySQL: รีเซ็ต AUTO_INCREMENT ให้เริ่มที่ 1 ด้วย TRUNCATE TABLE

    คำอธิบาย ใช้ TRUNCATE TABLE เพื่อลบข้อมูลทั้งหมดและรีเซ็ต AUTO_INCREMENT ให้เริ่มที่ 1 ใหม่ ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง mysql> create table DemoTable ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY ); Query OK, 0 rows affected (1.44 sec) การเพิ่มข้อมูล 4 แถว mysql> inser

  5. MySQL: จัดรูปแบบวันที่ด้วย DATE_FORMAT() และ STR_TO_DATE()

    คำอธิบาย ใช้ STR_TO_DATE() แปลงสตริงวันที่รูปแบบใดก็ได้ → DATE แล้ว DATE_FORMAT() แปลง DATE → สตริงรูปแบบที่ต้องการ ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง mysql> create table DemoTable ( DueDate varchar(100) ); Query OK, 0 rows affected (0.62 sec) การเพิ่มข้อมูล (รูปแบบเดือนเป็นตัวอักษร)

  6. MySQL: ดึงเฉพาะตัวเลขจาก Text Field ด้วย REPLACE ซ้อนกัน

    คำอธิบาย ใช้ REPLACE() ซ้อนหลายชั้น (Nested) เพื่อลบอักขระที่ไม่ต้องการ ( -, ช่องว่าง, คอมมา, อัญประกาศ ) ทิ้งเหลือเฉพาะตัวเลข ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง mysql> create table DemoTable ( Number text ); Query OK, 0 rows affected (0.49 sec) การเพิ่มข้อมูล mysql> insert into De

  7. MySQL: ค้นหาชื่อ-นามสกุลเฉพาะด้วย LIKE 2 ครั้ง (FirstName และ LastName)

    คำอธิบาย ใช้ LIKE 2 ครั้ง ร่วมกับ AND เพื่อค้นหาเรคคอร์ดที่มีชื่อ (FirstName) และนามสกุล (LastName) ตรงตามที่ต้องการในคอลัมน์รวมเดียว ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง mysql> create table DemoTable ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentName varchar(30) ); Qu

  8. MySQL: หาวันที่ล่าสุด 3 วันที่ไม่ซ้ำกัน ด้วย DISTINCT, ORDER BY, LIMIT

    คำอธิบาย ใช้ Subquery กรองวันที่ไม่ซ้ำ (DISTINCT) ก่อน แล้ว ORDER BY DESC เรียงใหม่ไปเก่า และ LIMIT 3 เอา 3 อันดับแรก ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง mysql> create table DemoTable ( AdmissionDate date ); Query OK, 0 rows affected (0.56 sec) การเพิ่มข้อมูล (มีวันที่ซ้ำ) mysql> in

  9. MySQL: COALESCE เรียงลำดับค่า NULL และ NON-NULL อย่างไร

    คำอธิบาย COALESCE() คืนค่า NON-NULL แรก จากรายการอาร์กิวเมนต์ (ซ้ายไปขวา) หากทุกค่าเป็น NULL คืน NULL ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง mysql> create table DemoTable ( Number1 int, Number2 int ); Query OK, 0 rows affected (5.48 sec) การเพิ่มข้อมูล mysql> insert into DemoTable

  10. MySQL: นับจำนวนแถวจาก 2 ตารางในคิวรี่เดียวด้วย Subquery และ DUAL

    คำอธิบาย ใช้ Subquery ใน SELECT clause นับ COUNT(*) จากแต่ละตาราง แล้ว SELECT จาก DUAL (Dummy table) เพื่อให้ได้ 1 แถวเดียว ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง ตารางที่ 1: DemoTable1 mysql> create table DemoTable1 ( Name varchar(40) ); Query OK, 0 rows affected (0.81 sec) mysql> insert

  11. MySQL: หาเรคคอร์ดที่ใกล้เคียงค่าที่กำหนดมากที่สุด (Nearest Value)

    คำอธิบาย ใช้ ABS() หาค่าสัมบูรณ์ของความต่าง แล้ว ORDER BY ความต่างน้อยไปมาก และ LIMIT 1 เพื่อเอาค่าที่ใกล้ที่สุด ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง mysql> create table DemoTable ( CustomerId int NOT NULL AUTO_INCREMENT PRIMARY KEY, ProductAmount int ); Query OK, 0 rows affected (0

  12. MySQL: UPDATE ตารางคำนวณ SUM แล้วเก็บไว้ที่แถวสุดท้าย

    คำอธิบาย ใช้ User-defined Variable (@Total) เก็บผลรวม SUM แล้ว UPDATE แถวสุดท้าย (Id=5) ให้เก็บค่าผลรวมนั้น ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง mysql> create table DemoTable ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Value int ); Query OK, 0 rows affected (0.61 sec) การเพิ่มข้อ

  13. MySQL: INSERT หลายค่าใน Temporary Table ด้วยคำสั่งเดียว

    คำอธิบาย ใช้ CREATE TEMPORARY TABLE สร้างตารางชั่วคราว (หายเมื่อ Session จบ) แล้ว INSERT หลายแถว ในคำสั่งเดียวด้วย Syntax VALUES (v1), (v2), (v3)... ขั้นตอนการสร้าง Temporary Table mysql> create temporary table DemoTable ( SerialNumber int ); Query OK, 0 rows affected (0.00 sec) คำสั่ง I

  14. MySQL: ตรวจสอบคอลัมน์เป็นตัวเลขหรือตัวอักษรด้วย REGEXP

    คำอธิบาย ใช้ REGEXP (Regular Expression) เพื่อตรวจสอบว่าคอลัมน์ประกอบด้วยตัวเลขอย่างเดียว หรือตัวอักษรอย่างเดียว รูปแบบ Regular Expression เฉพาะตัวเลข: REGEXP ^[0-9]+$ ไม่ใช่ตัวเลข (มีตัวอักษร/สัญลักษณ์): NOT REGEXP ^[0-9]+$ ^ = เริ่มสตริง, $ = จบสตริง, [0-9]+ = ตัวเลข 1 ตัวขึ้นไป ขั้นตอนการสร้

  15. MySQL: สร้างตารางใหม่โคลนโครงสร้างจากตารางเดิมด้วย LIKE

    คำอธิบาย ใช้ CREATE TABLE ... LIKE เพื่อคัดลอกโครงสร้างตาราง (Columns, Indexes, Constraints, Engine, Charset) ทุกอย่าง ยกเว้นข้อมูล (Data) และ Auto Increment Value ขั้นตอนการสร้างตารางต้นทางและข้อมูล mysql> create table DemoTable1 ( EmployeeId int NOT NULL AUTO_INCREMENT PRIMARY KEY,

  16. MySQL: Error INSERT INTO ... VALUE(...) ใช้ VALUES() แทน (พหูพจน์)

    คำอธิบาย คำสั่ง INSERT ใช้ VALUES() (พหูพจน์) ไม่ใช่ VALUE() (เอกพจน์) แม้จะ Insert แค่ 1 แถว ไวยากรณ์ที่ถูกต้อง INSERT INTO yourTableName VALUES(yourValue1, yourValue2, ...); ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง mysql> create table DemoTable ( StudentId int, StudentName varchar(40)

  17. MySQL: รันหลายคำสั่ง SELECT พร้อมกันด้วย DELIMITER

    คำอธิบาย ใช้ DELIMITER เปลี่ยนตัวจบคำสั่งจาก ; เป็น // ชั่วคราว เพื่อรันหลาย SELECT ติดกันใน Client (เช่น mysql command line) ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง ตารางที่ 1: DemoTable1 mysql> create table DemoTable1 ( Title text ) ENGINE=MyISAM; Query OK, 0 rows affected (0.30 sec) my

  18. MySQL: นับจำนวนรวมจาก 2 ตารางด้วย UNION ALL และ COUNT

    คำอธิบาย ใช้ UNION ALL รวมข้อมูลจาก 2 ตารางก่อน แล้วค่อย GROUP BY และ COUNT(*) เพื่อนับจำนวนรวมของแต่ละค่า ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง ตารางที่ 1: DemoTable1 mysql> create table DemoTable1 ( Name varchar(20) ); Query OK, 0 rows affected (0.49 sec) mysql> insert into DemoTable1 v

  19. MySQL: UPDATE ไม่เขียนทับค่าที่เหมือนเดิม (0 rows affected)

    คำอธิบาย MySQL UPDATE จะ ไม่ เขียนทับ (Overwrite) ค่าที่เหมือนเดิม ทำให้ Rows affected = 0 แม้จะ Match แถวได้ ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง mysql> create table DemoTable ( StudentId int, StudentMathMarks int, StudentMySQLMarks int ); Query OK, 0 rows affected (0.46 sec)

  20. MySQL: SUM คอลัมน์เฉพาะเดือนที่กำหนด (เช่น ธันวาคม) ด้วย MONTH()

    คำอธิบาย ใช้ฟังก์ชัน MONTH() ดึงเลขเดือนจาก DATE แล้วกรองใน WHERE clause ก่อนทำ SUM ขั้นตอนการสร้างตารางและข้อมูลตัวอย่าง mysql> create table DemoTable ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, PurchaseDate date, SalePrice int ); Query OK, 0 rows affected (0.51 sec) การเพิ่

Total 4564 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:56/229  20-คอมพิวเตอร์/Page Goto:1 50 51 52 53 54 55 56 57 58 59 60 61 62