Devdit
 

SQL หาค่าซ้ำ ด้วย GROUP BY และ HAVING

2.8K

สอนเขียนคำสั่ง SQL หาค่าซ้ำ ด้วย GROUP BY และ HAVING โดยนำคำสั่ง GROUP BY มาใช้รวมข้อมูลที่เหมือนกันไว้ด้วยกัน และคำสั่ง HAVING ใช้สำหรับกำหนดเงื่อนไขเพื่อหาค่าซ้ำ และแสดงออกสู่หน้าจอ สามารถเขียนคำสั่งได้ดังนี้

 

ตัวอย่าง ข้อมูลเริ่มต้นมีข้อมูลที่ซ้ำ คือ SQL และ Java

+------------+
| name       |
+------------+
| Java       |
| PHP        |
| MySQL      |
| SQL        |
| Linux      |
| SQL Server |
| Windows    |
| Javascript |
| SQL        |
| Java       |
+------------+

 

ตัวอย่าง SQL หาค่าซ้ำ ด้วย GROUP BY และ HAVING

SELECT name FROM book GROUP BY name HAVING ( count(name) > 1 );

ผลลัพธ์

+------+
| name |
+------+
| Java |
| SQL  |
+------+
2 rows in set (0.001 sec)

คำอธิบาย

คำสั่งด้านบน GROUP BY column name เพื่อรวมข้อมูลซ้ำไว้ด้วยกัน และใช้คำสั่ง HAVING กำหนดเงื่อนไข คือ ( count(name) > 1 ) หมายความว่าถ้านับข้อมูลของ column name และมีค่ามากว่า 1 ก็คือข้อมูลซ้ำ ให้แสดงข้อมูลดังกล่าวออกสู่หน้าจอ เพราะปกติถ้าข้อมูลไม่ซ้ำเมื่อนับแล้วก็จะมีเพียงแค่ค่าเดียว คือ 1 เท่านั้น

เขียน 2 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ