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

ค้นหาและแสดงบันทึกที่ซ้ำกันใน MySQL?


ขั้นแรก สร้างตารางโดยใช้คำสั่ง CREATE ได้ดังนี้ −

mysql> สร้างตาราง DuplicateFound-> (-> ID int,-> Name varchar(100),-> Location varchar(200)-> );Query OK, 0 แถวได้รับผลกระทบ (0.45 วินาที)

หลังจากสร้างตารางแล้ว ระเบียนจะถูกแทรกโดยใช้คำสั่ง INSERT ดังนี้ -

mysql> INSERT เป็นค่า DuplicateFound (1,'John','US'); ตกลง, 1 แถวได้รับผลกระทบ (0.10 วินาที)mysql> INSERT เป็นค่า DuplicateFound (2,'Bob','UK');Query ตกลง 1 แถวได้รับผลกระทบ (0.18 วินาที) mysql> INSERT เป็นค่า DuplicateFound (3,'David','US'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> INSERT ลงในค่า DuplicateFound (4,'Smith', 'US');แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที)mysql> INSERT ลงในค่า DuplicateFound (5,'Carol','UK'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที)

ระเบียนจะแสดงโดยใช้คำสั่ง SELECT ด้านล่างนี้ −

mysql> SELECT * จาก DuplicateFound;

ต่อไปนี้เป็นผลลัพธ์ที่ได้รับ -

<ก่อนหน้า>+------+-------+----------+| ไอดี | ชื่อ | ที่ตั้ง |+------+-------+----------+| 1 | จอห์น | สหรัฐอเมริกา || 2 | บ๊อบ | สหราชอาณาจักร || 3 | เดวิด | สหรัฐอเมริกา || 4 | สมิ ธ | สหรัฐอเมริกา || 5 | แครอล | สหราชอาณาจักร |+------+-------+----------+5 แถวในชุด (0.00 วินาที)

แบบสอบถามเพื่อค้นหาและแสดงระเบียนที่ซ้ำกันจะได้รับดังนี้ -

mysql> SELECT * จาก DuplicateFound-> โดยตำแหน่งใน (เลือกตำแหน่งจากกลุ่ม DuplicateFound ตามตำแหน่งที่มีการนับ (ตำแหน่ง)>1 )-> เรียงลำดับตามสถานที่

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

<ก่อนหน้า>+------+-------+----------+| ไอดี | ชื่อ | ที่ตั้ง |+------+-------+----------+| 2 | บ๊อบ | สหราชอาณาจักร || 5 | แครอล | สหราชอาณาจักร || 1 | จอห์น | สหรัฐอเมริกา || 3 | เดวิด | สหรัฐอเมริกา || 4 | สมิ ธ | US |+------+-------+----------+5 แถวในชุด (0.06 วินาที)

เราสามารถแสดงบันทึกเหล่านั้นที่เป็นของสถานที่เดียว ได้ดังนี้ −

mysql> เลือก ชื่อ, ตำแหน่งจาก DuplicateFound-> จัดกลุ่มตามตำแหน่ง-> มีการนับ (ตำแหน่ง)> 1;

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

<ก่อนหน้า>+------+----------+| ชื่อ | ที่ตั้ง |+------+----------+| จอห์น | สหรัฐอเมริกา || บ๊อบ | สหราชอาณาจักร |+------+----------+2 แถวในชุด (0.04 วินาที)