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

รับการนับหลายรายการในแบบสอบถาม MySQL เดียวสำหรับค่าคอลัมน์เฉพาะ


สำหรับสิ่งนี้ คุณสามารถใช้ฟังก์ชันรวม sum() ร่วมกับค่าพารามิเตอร์สำหรับคอลัมน์เฉพาะ ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable1790 (รหัส int ไม่ใช่ NULL AUTO_INCREMENT คีย์หลัก ชื่อ varchar (20) คะแนน int ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.94 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable1790(Name,Score)('Chris',45);Query OK, 1 แถวได้รับผลกระทบ (0.38 วินาที)mysql> แทรกลงในค่า DemoTable1790(Name,Score)('David',55);แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที)mysql> แทรกลงใน DemoTable1790 (ชื่อคะแนน) ค่า ('David',98); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที) mysql> แทรกลงใน DemoTable1790 (ชื่อคะแนน) ค่า ('Chris', 91); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงใน DemoTable1790 (ชื่อคะแนน) ค่า ('ไมค์', 99); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงในค่า DemoTable1790(ชื่อ คะแนน) ('แครอล',55);ตกลง ตกลง 1 แถวได้รับผลกระทบ (0.35 วินาที)

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

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

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+----+-------+-------+| รหัส | ชื่อ | คะแนน |+----+-------+-------+| 1 | คริส | 45 || 2 | เดวิด | 55 || 3 | เดวิด | 98 || 4 | คริส | 91 || 5 | ไมค์ | 99 || 6 | แครอล | 55 |+----+-------+-------+6 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อรับการนับหลายรายการในแบบสอบถาม MySQL เดียว -

mysql> เลือก sum(Name='Chris'),sum(Score=55) จาก DemoTable1790;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+-------------------+--------------+| sum(Name='Chris') | ผลรวม(คะแนน=55) |+-------------------+--------------+| 2 | 2 |+-------------------+--------------+1 แถวในชุด (0.00 วินาที)