قيم فارغة تمثل مفقود بيانات مجهولة.
بشكل افتراضي، يمكن عمود جدول تعقد قيم فارغة.
وهذا الفصل شرح لاغيا وIS NOT NULL المشغلين.
قيم SQL NULL
إذا كان عمود في الجدول هو اختياري، ونحن يمكن إدراج سجل جديد أو تحديث سجل موجود دون إضافة قيمة لهذا العمود. وهذا يعني أن الحقل سوف يتم حفظها مع قيمة فارغة.
يتم التعامل مع قيم فارغة بشكل مختلف من القيم الأخرى.
يستخدم فارغة كعنصر نائب للقيم غير معروفة أو غير قابلة للتطبيق.
ملاحظة: ليس منالممكن مقارنة فارغة و0؛ فهي ليست ما يعادلها.
SQL العمل مع القيم NULL
انظروا إلى ما يلي "Persons" الجدول:
P_Id | الكنية | الاسم الاول | عنوان | مدينة |
---|---|---|---|---|
1 | هانسن | علا | ساندنس | |
2 | Svendson | توف | Borgvn 23 | ساندنس |
3 | بيترسن | كاري | ستافنجر |
لنفترض أن "Address" عمود في "Persons" الجدول هو اختياري. وهذا يعني أنه إذا كنا إدراج سجل مع عدم وجود قيمة لل "Address" عمود، "Address" سيتم حفظ عمود مع قيمة فارغة.
كيف يمكننا اختبار للقيم فارغة؟
وليس من الممكن لاختبار القيم NULL مع عوامل المقارنة، مثل =، <، أو <> .
سيكون لدينا لاستخدام IS NULL وليست شركات فارغة بدلا من ذلك.
SQL IS NULL
كيف نختار فقط السجلات مع قيم فارغة في "Address" العمود؟
سيكون لدينا لاستخدام IS NULL مشغل:
SELECT LastName,FirstName,Address FROM Persons
WHERE Address IS NULL
وسوف يقدم مجموعة النتائج تبدو مثل هذا:
الكنية | الاسم الاول | عنوان |
---|---|---|
هانسن | علا | |
بيترسن | كاري |
نصيحة: استخدم دائما فارغة للبحث عن قيم فارغة.
SQL IS NOT NULL
كيف نختار فقط السجلات مع عدم وجود قيم فارغة في "Address" العمود؟
سيكون لدينا لاستخدام IS NOT NULL مشغل:
SELECT LastName,FirstName,Address FROM Persons
WHERE Address IS NOT NULL
وسوف يقدم مجموعة النتائج تبدو مثل هذا:
الكنية | الاسم الاول | عنوان |
---|---|---|
Svendson | توف | Borgvn 23 |
في الفصل التالي سوف ننظر في ISNULL() ، NVL() ، IFNULL() و COALESCE() وظائف.