สำหรับสิ่งนี้ คุณสามารถใช้ GROUP BY HAVING clause ร่วมกับ IN() ให้เราสร้างตารางก่อน -
mysql> สร้างตาราง DemoTable1885 ( FirstName varchar(20), Subject varchar(50) );Query OK, 0 แถวได้รับผลกระทบ (0.00 วินาที)
แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -
mysql> แทรกลงในค่า DemoTable1885 ('John', 'MySQL'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> แทรกลงในค่า DemoTable1885 ('John', 'MongoDB'); แบบสอบถามตกลง 1 แถว ได้รับผลกระทบ (0.00 วินาที) mysql> แทรกลงในค่า DemoTable1885 ('Carol', 'MySQL'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> แทรกลงในค่า DemoTable1885 ('David', 'Java'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.00 วินาที)
แสดงบางระเบียนในตารางโดยใช้คำสั่ง insert -
mysql> เลือก * จาก DemoTable1885;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+-----------+---------+| ชื่อจริง | หัวเรื่อง |+-----------+---------+| จอห์น | MySQL|| จอห์น | MongoDB|| แครอล | MySQL|| เดวิด | Java |+-----------+---------+4 แถวในชุด (0.00 วินาที)นี่คือแบบสอบถามเพื่อเลือกแถวเมื่อคอลัมน์ต้องเป็นไปตามค่าหลายค่า:
mysql> เลือก FirstName จาก DemoTable1885 โดยที่ Subject IN('MySQL','MongoDB') จัดกลุ่มตาม FirstName มี count(*)=2;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+-----------+| ชื่อจริง |+-----------+| John |+-----------+1 แถวในชุด (0.00 วินาที)