Distinct กับ Group by


หน้าแรก PHP MySQL เกร็ดความรู้ Distinct กับ Group by

DISTINCT เป็นคำสั่งที่ใช้หาข้อมูลที่ไม่ซ้ำออกมา ซึ่งถ้าข้อมูลซ้ำกันจะเลือกมาแค่ Record เดียว

1
2
3
SELECT DISTINCT(member_id) 
FROM member
LIMIT 0,10

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

1
2
3
4
SELECT member_id 
FROM member 
GROUP BY member_id
LIMIT 0,10

เรื่องที่จะบอกก็คือ
DISTINCT กับ GROUP BY ผลลัพธ์ของข้อมูลได้เหมือนกัน แต่ความเร็วในการ Query ต่างกันมาก กับข้อมูลมาก ๆ เพราะฉะนั้นมาเปลี่ยนมาใช้ GROUP BY ดีกว่า เพื่อความเร็วของ program และ db admin จะได้ไม่บ่น

 refer: http://www.webshowpow.com/distinct-%E0%B8%81%E0%B8%B1%E0%B8%9A-group-by/



ขึ้นไปด้านบน