การ SELECT ข้อมูลด้วย HAVING และ WHERE

SQL Knowledge ทั้ง sql มาตรฐาน หลักการออกแบบฐานข้อมูล ความสัมพันธ์ของ ตาราง Mysql , PGSQL, Oracle, MSSQL

Moderator: mindphp, ผู้ดูแลกระดาน

M013
PHP Super Hero Member
PHP Super Hero Member
โพสต์: 829
ลงทะเบียนเมื่อ: 22/04/2010 12:02 pm

การ SELECT ข้อมูลด้วย HAVING และ WHERE

โพสต์ที่ยังไม่ได้อ่าน โดย M013 »

การ 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 ตารางข้อมูลการสั่งซื้อสินค้า
ภาพที่ 1.1 ตารางข้อมูลการสั่งซื้อสินค้า
select_product.jpg (147.17 KiB) Viewed 9907 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 ข้างต้นจะเเสดงผลออกมาดังภาพ
ภาพที่ 1.2 จากการใช้คำสั่งจาก Code ข้างต้นจะเเสดงผลออกมาดังภาพ
select_where_having_output.jpg (33.48 KiB) Viewed 9907 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 ข้างต้นจะเเสดงผลออกมาดังภาพ
ภาพที่ 1.3 จากการใช้คำสั่งจาก Code ข้างต้นจะเเสดงผลออกมาดังภาพ
select_where_where_having_output.jpg (26.05 KiB) Viewed 9902 times
N_T

Re: การ SELECT ข้อมูลด้วย HAVING และ WHERE

โพสต์ที่ยังไม่ได้อ่าน โดย N_T »

ทำให้รู้ว่ามี HAVING ด้วย ไม่เคยใช้เลย :lol:
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 78