ค่า NULL คืออะไร
เขตข้อมูลที่มีค่า NULL คือเขตข้อมูลที่ไม่มีค่า ถ้าฟิลด์ในตารางเป็นตัวเลือก คุณสามารถแทรกเรคคอร์ดใหม่หรืออัพเดตเรคคอร์ดโดยไม่ต้องเพิ่มค่าลงในฟิลด์นี้ จากนั้นฟิลด์จะถูกบันทึกด้วยค่า NULL
หมายเหตุ:ค่า NULL จะแตกต่างจากค่าศูนย์หรือฟิลด์ที่มีช่องว่าง เขตข้อมูลที่มีค่า NULL คือเขตข้อมูลที่ถูกเว้นว่างไว้ระหว่างการสร้างเรคคอร์ด!
จะทดสอบค่า NULL ได้อย่างไร
ไม่สามารถทดสอบค่า NULL ด้วยตัวดำเนินการเปรียบเทียบ เช่น =, < หรือ <>
เราจะต้องใช้ ตัวดำเนินการ IS NULLและ IS NOT NULLแทน
ไวยากรณ์ IS NULL
SELECT column_names
FROM table_name
WHERE column_name IS NULL;
ไวยากรณ์ IS NOT NULL
SELECT column_names
FROM table_name
WHERE column_name IS NOT NULL;
ฐานข้อมูลสาธิต
ด้านล่างนี้คือการเลือกจากตาราง “Customers” ในฐานข้อมูลตัวอย่าง Northwind:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
IS NOT NULL Operator
IS NOT NULLดำเนินการใช้เพื่อทดสอบค่าที่ไม่ว่าง (ไม่ใช่ค่า NULL)
SQL ต่อไปนี้แสดงลูกค้าทั้งหมดที่มีค่าในช่อง “Address”:
ตัวอย่าง
SELECT CustomerName, ContactName, Address
FROM Customers
WHERE Address IS NOT NULL;