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

จะค้นหาคู่ค่าที่ซ้ำกันใน MySQL ได้อย่างไร


หากต้องการค้นหาคู่ค่าที่ซ้ำกันใน MySQL ให้ใช้ประโยค GROUP BY HAVING

ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable748 (Id int, FirstName varchar(100)); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.46 วินาที)

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

mysql> แทรกลงในค่า DemoTable748 (100,'John');Query OK, 1 แถวได้รับผลกระทบ (0.10 วินาที)mysql> แทรกลงในค่า DemoTable748 (100,'Sam');Query OK, 1 แถวได้รับผลกระทบ (0.12 วินาที) )mysql> แทรกลงในค่า DemoTable748(200,'Carol');แบบสอบถามตกลง, 1 แถวได้รับผลกระทบ (0.10 วินาที)mysql> แทรกลงในค่า DemoTable748(200,'Carol');แบบสอบถามตกลง, 1 แถวได้รับผลกระทบ (0.13 วินาที)mysql> แทรกลงในค่า DemoTable748 (300, 'ไมค์'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.17 วินาที) mysql> แทรกลงในค่า DemoTable748 (300, 'แซม'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.15 วินาที)

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

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

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

<ก่อนหน้า>+------+-----------+| รหัส | ชื่อจริง |+------+-----------+| 100 | จอห์น || 100 | แซม || 200 | แครอล || 200 | แครอล || 300 | ไมค์ || 300 | แซม |+------+-----------+6 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อค้นหาคู่ค่าที่ซ้ำกันใน MySQL -

mysql> เลือก Id จากกลุ่ม DemoTable748 ตาม Id,FirstName มี count(*)=2;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ เนื่องจากคู่ค่าที่ซ้ำกันสำหรับ Id และ FirstName คือ 200 ดังนั้นผลลัพธ์จะแสดงค่าเดียวกัน -

<ก่อนหน้า>+------+| รหัส |+------+| 200 | +------+1 แถวในชุด (0.00 วินาที)