مقادیر null در SQL
مقدار NULL بیانگر داده ای است که مشخص نشده و فیلدی خالی است.
به طور پیش فرض، یک ستون از جدول می تواند مقدار NULL را در خود نگه دارد.
در این فصل می خواهیم، عملگرهای IS NULL و IS NOT NULL را توضیح دهیم.
مقدار NULL
اگر وارد کردن مقدار در ستونی در یک جدول، اختیاری باشد، می توانیم در رکورد جدید یا رکورد موجود بدون اضافه کردن مقداری در این ستون، مقدار NULL را در این فیلد داشته باشیم.
با مقدار NULL نسبت به مقادیر دیگر، رفتار متفاوتی می شود.
در فیلدهای نامشخص یا نامعلوم که مقداری وارد نمی شود، مقدار NULL وجود دارد.
توجه: NULL و صفر را نمی توان با هم یکی دانست، این دو معادل یکدیگر نیستند.
کار با NULL
به جدول Persons در زیر نگاه کنید:
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Hansen | Ola | Sandnes | |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
3 | Pettersen | Kari | Stavanger |
فرض کنید که وارد کردن مقدار در ستون Address اختیاری باشد. این بدان معناست که اگر رکوردی را بدون وارد کردن مقداری در ستون Address درج کنیم، ستون Address با مقدار NULL ذخیره می شود.
چگونه می توانیم تست کنیم فیلدی مقدار NULL دارد؟
با عملگر های مقایسه ای مثل (=, <, >) نمی توان مقدار NULL را تست کرد.
بلکه باید از عملگرهای IS NULL و IS NOT NULL استفاده کنیم.
IS NULL
چگونه می توان رکوردهایی را که در ستون Address مقدار NULL دارند را انتخاب کرد؟
باید از عملگر IS NULL برای این کار استفاده کرد:
WHERE Address IS NULL
نتیجه چنین خواهد بود:
LastName | FirstName | Address |
---|---|---|
Hansen | Ola | |
Pettersen | Kari |
نکته: همیشه از IS NULL برای مشاهده فیلدهای حاوی مقدار NULL استفاده کنید.
IS NOT NULL
چگونه رکوردهایی را که مقدارشان NULL نیست را از ستون Address انتخاب کنیم؟
باید از عملگر IS NOT NULL استفاده کنیم:
WHERE Address IS NOT NULL
نتیجه چنین خواهد شد:
LastName | FirstName | Address |
---|---|---|
Svendson | Tove | Borgvn 23 |
در فصل بعد به توابع () ISNULL() ,NVL() ,IFNULL() ,COALESCE نظری خواهیم داشت.
برای مشاهده فیلم های آموزشی مقدماتی تا پیشرفته پایگاه داده SQLServer کلیک کنید.
- نوشته شده توسط مهندس تمیزی
- بازدید: 22831