SQL Knowledge ทั้ง sql มาตรฐาน หลักการออกแบบฐานข้อมูล ความสัมพันธ์ของ ตาราง Mysql , PGSQL, Oracle, MSSQL
Moderator: mindphp , ผู้ดูแลกระดาน
M013
PHP Super Hero Member
โพสต์: 829 ลงทะเบียนเมื่อ: 22/04/2010 12:02 pm
โพสต์ที่ยังไม่ได้อ่าน
โดย M013 » 14/08/2013 11:44 am
การ 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 9991 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 9991 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 9986 times
0 ตอบกลับ
4605 แสดง
โพสต์ล่าสุด โดย jataz2
06/01/2016 9:44 am
5 ตอบกลับ
5811 แสดง
โพสต์ล่าสุด โดย AePongsak
20/04/2018 5:05 pm
0 ตอบกลับ
2263 แสดง
โพสต์ล่าสุด โดย thatsawan
11/03/2016 12:39 am
1 ตอบกลับ
3618 แสดง
โพสต์ล่าสุด โดย mindphp
08/05/2017 2:35 am
4 ตอบกลับ
1107 แสดง
โพสต์ล่าสุด โดย adinan49
15/12/2021 2:01 pm
3 ตอบกลับ
982 แสดง
โพสต์ล่าสุด โดย mindphp
02/11/2019 1:55 pm
สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 8