คุณสามารถใช้ฟังก์ชันการรวม SUM() ร่วมกับ IF() ให้เราสร้างตารางก่อน -
mysql> สร้างตาราง DemoTable( FirstName varchar(100), LastName varchar(100));Query OK, 0 แถวได้รับผลกระทบ (2.80 วินาที)
แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -
mysql> แทรกลงในค่า DemoTable ('Adam', 'Smith'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.25 วินาที) mysql> แทรกลงในค่า DemoTable ('John', 'Smith'); แบบสอบถามตกลง 1 แถว ได้รับผลกระทบ (0.36 วินาที) mysql> แทรกลงในค่า DemoTable ('John', 'Doe'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (1.38 วินาที) mysql> แทรกลงในค่า DemoTable ('Bob', 'Doe'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที) mysql> แทรกลงในค่า DemoTable ('Sam', 'Smith'); ตกลง ตกลง 1 แถวได้รับผลกระทบ (0.25 วินาที)
แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -
mysql> เลือก *จาก DemoTable;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+-----------+----------+| ชื่อจริง | นามสกุล |+-----------+----------+| อดัม | สมิธ || จอห์น | สมิธ || จอห์น | โด || บ๊อบ | โด || แซม | Smith |+-----------+----------+5 แถวในชุด (0.00 วินาที)นี่คือแบบสอบถามสำหรับ MySQL หลาย COUNT ที่มีหลายคอลัมน์
mysql> เลือก sum(if(FirstName='John',1,0)) เป็น John_Count,sum(if(LastName='Smith',1,0)) เป็น Smith_Count จาก DemoTable;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+-----------+-------------+| John_Count | Smith_Count |+-----------+-------------+| 2 | 3 |+------------+-------------+1 แถวในชุด (0.00 วินาที)