التأكد من خُلوّ القيمة IS NULL في SQL
< SQL
يستخدم التعبير IS NULL للتأكد من خلو القيمة (أي لا توجد قيمة في الحقل المحدد)، ويكون سياق التعبير بالشكل الآتي:
column IS [NOT] NULL
وغالبًا ما تستخدم في العبارة WHERE
للتحقق من وجود القيمة في إحدى حقول السجلات.
مثال
إن كانت قاعدة البيانات تحتوي الجدول customers
الآتي:
Bill | OrderID | Phone | FullName | CustomerID |
---|---|---|---|---|
160 | 0291 | NULL | Abd al-Salam Hadi | 1156 |
170 | 0302 | (171) 555-2222 | Ahmad Mostafa | 1157 |
210 | 0203 | (100) 555-4822 | Reem Hammad | 1158 |
350 | 0294 | NULL | Abd Allah Sadiq | 1159 |
185 | 0255 | (03) 3555-5011 | Raghad al-Hamdan | 1160 |
165 | 0276 | (98) 598 76 54 | Abd al-Razzaq Salloum | 1161 |
175 | 0247 | NULL | Hussam Siraj | 1162 |
180 | 0208 | NULL | Hiba Maktabi | 1163 |
170 | 0219 | (06) 431-7877 | Abd al-Rahman Rida | 1164 |
220 | 0210 | NULL | Abd al-Qader Khalil | 1165 |
إن الاستعلام الآتي:
SELECT *
FROM customers
WHERE Phone IS NULL;
سيُظهر السجلات التي لا تحتوي على أي قيمة في حقل Phone
على النحو الآتي:
Bill | OrderID | Phone | FullName | CustomerID |
---|---|---|---|---|
160 | 0291 | NULL | Abd al-Salam Hadi | 1156 |
350 | 0294 | NULL | Abd Allah Sadiq | 1159 |
175 | 0247 | NULL | Hussam Siraj | 1162 |
180 | 0208 | NULL | Hiba Maktabi | 1163 |
220 | 0210 | NULL | Abd al-Qader Khalil | 1165 |
أما لعرض الزبائن الذي زوّدوا قاعدة البيانات برقم الهاتف، يستخدم الاستعلام الآتي:
SELECT *
FROM customers
WHERE Phone IS NOT NULL;
لتظهر النتائج:
Bill | OrderID | Phone | FullName | CustomerID |
---|---|---|---|---|
170 | 0302 | (171) 555-2222 | Ahmad Mostafa | 1157 |
210 | 0203 | (100) 555-4822 | Reem Hammad | 1158 |
185 | 0255 | (03) 3555-5011 | Raghad al-Hamdan | 1160 |
165 | 0276 | (98) 598 76 54 | Abd al-Razzaq Salloum | 1161 |
170 | 0219 | (06) 431-7877 | Abd al-Rahman Rida | 1164 |
التوافقية
SQLServer | SQLite | Oracle | PostgreSQL | MySQL |
---|---|---|---|---|
نعم | نعم | نعم | نعم | نعم |