Devdit
 

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

อ่านแล้ว 3.1K
ชอบ

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

 

ตัวอย่าง ข้อมูลเริ่มต้นมีข้อมูลที่ซ้ำ คือ 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 ) ORDER BY id ASC;

ผลลัพธ์

+------------+
| name       |
+------------+
| PHP        |
| MySQL      |
| Linux      |
| SQL Server |
| Windows    |
| Javascript |
+------------+
6 rows in set (0.001 sec)

คำอธิบาย

แสดงข้อมูลจากตาราง book โดยใช้คำสั่ง GROUP BY name เพื่อรวมข้อมูล name ที่ซ้ำเข้าด้วยกัน พร้อมกับใช้คำสั่ง HAVING ( COUNT(name) = 1 ) กรณีถ้าข้อมูลซ้ำการ COUNT จะได้ค่ามากว่า 1 จากเงื่อนไขคือ 1 แปลว่าแสดงเฉพาะข้อมูลที่ไม่ซ้ำออกสู่หน้าจอ

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