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 9908 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 9908 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 9903 times
0 ตอบกลับ
4476 แสดง
โพสต์ล่าสุด โดย jataz2
06/01/2016 9:44 am
1 ตอบกลับ
3365 แสดง
โพสต์ล่าสุด โดย mindphp
08/05/2017 2:35 am
0 ตอบกลับ
2164 แสดง
โพสต์ล่าสุด โดย thatsawan
11/03/2016 12:39 am
5 ตอบกลับ
5531 แสดง
โพสต์ล่าสุด โดย AePongsak
20/04/2018 5:05 pm
0 ตอบกลับ
857 แสดง
โพสต์ล่าสุด โดย gainkullan
15/03/2017 3:31 pm
4 ตอบกลับ
5621 แสดง
โพสต์ล่าสุด โดย mindphp
05/10/2014 10:22 pm
1 ตอบกลับ
2348 แสดง
โพสต์ล่าสุด โดย jataz2
19/08/2015 11:26 am
สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 68