การ SELECT ข้อมูลด้วย HAVING และ WHERE
การ SELECT ข้อมูลด้วย HAVING เป็นเหมือนการเพิ่มเงื่อนไขขึ้นมาจาก GROUP BY
(**สามารถอ่านข้อมูลเพิ่มเติมเกี่ยวกับ GROUP BY https://www.mindphp.com/forums/viewtopic ... 883#p38883)
รูปแบบคำสั่ง HAVING
โค้ด: เลือกทั้งหมด
SELECT ชื่อคอลัมน์
FROM ชื่อตารางข้อมูล
GROUP BY ชื่อคอลัมน์
HAVING เงื่อนไข;
** จะเห็นได้ว่าเเตกต่างจาก GROUP BY เพียงเพิ่ม HAVING เข้ามา
ตัวอย่างการใช้งาน HAVING
- ภาพที่ 1.1 ตารางข้อมูลการสั่งซื้อสินค้า
- select_product.jpg (147.17 KiB) Viewed 9918 times
>> ต้องทราบผลรวมของการสั่งซื้อสินค้า โดยแบ่งกลุ่มตามที่อยู่เพื่อดูยอดขายของเเต่ละจังหวัด ที่มียอดขายมากกว่า 1500 บาท
โค้ด: เลือกทั้งหมด
SELECT cus_address AS "Address", SUM(order_price) AS "Total"
FROM Order_product
ORDER BY cus_address
HAVING SUM(order_price) >= 1500;
การเเสดงผล
- ภาพที่ 1.2 จากการใช้คำสั่งจาก Code ข้างต้นจะเเสดงผลออกมาดังภาพ
- select_where_having_output.jpg (33.48 KiB) Viewed 9918 times
_________________
รูปแบบคำสั่ง WHERE ร่วมกับ HAVING
โค้ด: เลือกทั้งหมด
SELECT ชื่อคอลัมน์
FROM ชื่อตารางข้อมูล
WHERE เงื่อนไข
GROUP BY ชื่อคอลัมน์
HAVING เงื่อนไข;
ตัวอย่างการใช้งาน WHERE ร่วมกับ HAVING
>> จากตัวอย่างการใช้งาน HAVING ต้องการทราบเฉพาะจังหวัดกรุงเทพ และ เชียงใหม่
(ดูตารางข้อมูลจาก ภาพที่ 1.1 ตารางข้อมูลการสั่งซื้อสินค้า)
โค้ด: เลือกทั้งหมด
SELECT cus_address AS "Address", SUM(order_price) AS "Total"
FROM Order_product
WHERE cus_address IN ('Bangkok', 'Chingmai')
ORDER BY cus_address
HAVING SUM(order_price) >= 1500;
การเเสดงผล
- ภาพที่ 1.3 จากการใช้คำสั่งจาก Code ข้างต้นจะเเสดงผลออกมาดังภาพ
- select_where_where_having_output.jpg (26.05 KiB) Viewed 9913 times