Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

นับจำนวนครั้งที่ปรากฏในคอลัมน์เฉพาะใน MySQL?


คุณสามารถใช้ฟังก์ชันการรวม count() กับกลุ่มตาม ไวยากรณ์มีดังนี้

เลือก yourColumnName,count(*) เป็น anyVariableName จากกลุ่ม yourtableName โดย yourColumnName;

เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างตาราง แบบสอบถามเพื่อสร้างตารางมีดังนี้

mysql> สร้างตาราง CountSameValue-> (-> Id int,-> Name varchar(100),-> Marks int-> );Query OK, 0 แถวได้รับผลกระทบ (0.70 วินาที)

แทรกระเบียนในตารางโดยใช้คำสั่งแทรก แบบสอบถามมีดังนี้

mysql> แทรกลงในค่า CountSameValue (1,'Sam',67); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.17 วินาที) mysql> แทรกลงในค่า CountSameValue (2, 'Mike', 87); แบบสอบถามตกลง 1 แถว ได้รับผลกระทบ (0.19 วินาที) mysql> แทรกลงในค่า CountSameValue (3,'Carol',67); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.24 วินาที) mysql> แทรกลงในค่า CountSameValue (4,'Bob',87); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.18 วินาที) mysql> แทรกลงในค่า CountSameValue (5, 'John', 71); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.17 วินาที) mysql> แทรกลงในค่า CountSameValue (6, 'Adam', 66); แบบสอบถาม ตกลง 1 แถวได้รับผลกระทบ (0.18 วินาที) mysql> แทรกลงในค่า CountSameValue (7, 'David', 71); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงในค่า CountSameValue (8, 'Maria', 67);แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.16 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select แบบสอบถามมีดังนี้

mysql> เลือก *จาก CountSameValue;

ต่อไปนี้เป็นผลลัพธ์

<ก่อนหน้า>+------+-------+-------+| รหัส | ชื่อ | เครื่องหมาย |+------+-------+-------+| 1 | แซม | 67 || 2 | ไมค์ | 87 || 3 | แครอล | 67 || 4 | บ๊อบ | 87 || 5 | จอห์น | 71 || 6 | อดัม | 66 || 7 | เดวิด | 71 || 8 | มาเรีย | 67 |+------+-------+------+8 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อนับจำนวนครั้งที่ค่า (เครื่องหมาย) ปรากฏในคอลัมน์ แบบสอบถามมีดังนี้

mysql> เลือก Marks,count(*) เป็น Total จากกลุ่ม CountSameValue โดย Marks;

ต่อไปนี้เป็นผลลัพธ์

<ก่อนหน้า>+-------+-------+| มาร์ค | รวม |+-------+-------+| 67 | 3 || 87 | 2 || 71 | 2 || 66 | 1 |+-------+-------+4 แถวในชุด (0.00 วินาที)