ในบทความนี้ เราจะเข้าใจความแตกต่างระหว่างส่วนคำสั่ง WHERE และส่วนคำสั่ง HAVING ใน SQL
WHERE ข้อ
-
ใช้เพื่อกรองระเบียนจากตารางตามเงื่อนไขเฉพาะ
-
สามารถใช้ได้โดยไม่ต้องมีประโยค "GROUP BY"
-
สามารถใช้กับการดำเนินการแถวได้
-
ไม่สามารถมีฟังก์ชันการรวมได้
-
สามารถใช้กับคำสั่ง 'SELECT', 'UPDATE' และ 'DELETE' ได้
-
ใช้ก่อนประโยค "GROUP BY" หากจำเป็น
-
ใช้กับฟังก์ชันแถวเดียว เช่น 'UPPER', 'LOWER'
มีมาตรา
-
ใช้เพื่อกรองระเบียนออกจากกลุ่มตามเงื่อนไขเฉพาะ
-
ไม่สามารถใช้งานได้หากไม่มีส่วนคำสั่ง "GROUP BY"
-
ใช้งานได้กับการทำงานของคอลัมน์
-
สามารถมีฟังก์ชันการรวมได้
-
สามารถใช้ได้กับคำสั่ง 'SELECT' เท่านั้น
-
ใช้ตามหลังประโยค "GROUP BY"
-
สามารถใช้กับฟังก์ชันหลายแถว เช่น 'SUM', 'COUNT'
ต่อไปนี้คือไวยากรณ์:
SELECT column1, column2 FROM table1, table2 WHERE [ conditions ] GROUP BY column1, column2 HAVING [ conditions ] ORDER BY column1, column2