คําสั่ง SQL ดึงข้อมูลที่ซ้ำกัน Query duplicate data database

Spread the love

ในการทำงานเกี่ยวกับฐานข้อมูลก็มักจะมีโอกาสเกิดปัญหาข้อมูลซ้ำซ้อนกันในตารางภายในฐานข้อมูล กันเรียก ข้อมูลซ้ำซ้อน Duplicate record ที่นี้เนื่องจากการที่ข้อมูลจำนวนมากจนเกินไปจนไม่สามารถตรวจสอบด้วยตาเปล่าด้วย เราจึงจำเป็นต้องใช้คำสั่ง SQL เพื่อดึงข้อมูลที่ซ้ำกันมาแสดง

วิธีเขียนคำสั่ง SQL Query แสดงข้อมูลที่ซ้ำกัน Record ซ้ำใน Database

หนึ่งอย่างที่มักจะเป็นปัญหาที่เจอซ้ำกันบ่อย ๆ นั้นคือเลขบัตรประชาชน หรือ เลขรหัสสินค้า ดังนั้นวันนี้เราจะมาเขียนคำสั่ง SQL ตัวอย่าง หาข้อมูลเลขบัตรประชาชนซ้ำกันในฐานข้อมูล รูปแบบคำสั่ง

 

 

SELECT *, COUNT(ชื่อ Column ที่ใช้เป็นเงื่อนไข) as count
FROM ชื่อตาราง
GROUP BY ชื่อ Column ที่ใช้เป็นเงื่อนไข Having COUNT(ชื่อ Column ที่ใช้เป็นเงื่อนไข) > 1

ส่วนตัวอย่างการใช้งานก็สามารถเขียนได้แบบนี้

SELECT *, COUNT(CITIZEN_ID) as count
FROM STUDENT
GROUP BY CITIZEN_ID Having COUNT(CITIZEN_ID) > 1

คำอธิบาย

เราจะใช้คำสั่ง GROUP BY และ HAVING เพื่อใช้ในการนับจำนวนในคำสั่ง SQL

GROUP BY [Column name] คือ รวมข้อมูลจาก column name ที่ซ้ำกันให้เหลือ column เดียว เช่น CITIZEN_ID  ซ้ำกัน 2 ข้อมูล แต่เมื่อ Group แล้วก็จะแสดง CITIZEN_ID  แค่ Record เดียว

HAVING COUNT([Column name]) > 1 คือ กำหนดเงื่อนไขให้แสดงเฉพาะข้อมูลที่ซ้ำ โดยการนับ column name ที่มีจำนวนมากกว่า 1 Record

บทความอื่น ๆ ที่เกี่ยวข้องกับ คำสั่ง SQL

เป็นยังไงกันบ้างคะ ไม่ยากเลยใช่ไหมละกับวิธีเขียนคำสั่ง SQL Query ดึงข้อมูลไม่ซ้ำ record ซ้ำ หรือเรียกว่า Duplicate record ก็ได้คะ ดูเพลินก็หวังว่าบทความของเราจะเป็นประโยชน์ต่อท่านไม่มากก็น้อย นอกจากนี้ เรายังมีบทความดี ๆ อีกมากมาย คุณสามารถลองคลิกเขาไปอ่านบทความอื่น ๆ ตามลิงค์ด้านล่างได้เลย

เทคนิคอื่นๆ เกี่ยวกับการเขียนโค้ด คลิก

อย่าลืมไปติดตาม Facebook fanpage ของเรา >> Click <<