Რა უნდა იცოდეთ NULL ღირებულებები

გვესმის NULL- ების გამოყენება მონაცემთა ბაზის პრობლემების თავიდან ასაცილებლად

მონაცემთა ბაზების სამყაროში ახალი მომხმარებელი ხშირად ხშირად დაბნეულია სპეციალურ მნიშვნელობამ სფეროში - NULL ღირებულება. ეს მაჩვენებელი შეიძლება მოიძებნოს ნებისმიერი ტიპის მონაცემთა შემცველ სფეროში და ძალიან განსაკუთრებული მნიშვნელობა აქვს რელატიური მონაცემთა ბაზის კონტექსტში. ეს არის ალბათ საუკეთესო დაიწყოს ჩვენი განხილვა NULL რამდენიმე სიტყვა, თუ რა NULL არ არის :

უფრო მეტიც, NULL არის მნიშვნელობა, რომელიც გამოიყენება უცნობი ნაწილის მონაცემები. ხშირად მონაცემთა ბაზისტებმა გამოიყენეს ფრაზა "NULL ღირებულება", მაგრამ ეს არასწორია. გახსოვდეთ: NULL არის უცნობი მნიშვნელობა, რომელშიც ველი ცარიელია.

NULL in Real World

მოდით შევამოწმოთ მარტივი მაგალითი: მაგიდა, რომელიც შეიცავს ხილის სტენდის ინვენტარს. დავუშვათ, რომ ჩვენი ინვენტარი შეიცავს 10 ვაშლს და სამი ფორთოხალი. ჩვენ ასევე ვიღებთ ფსონებს, მაგრამ ჩვენი ინვენტარის ინფორმაცია არასრულია და ჩვენ არ ვიცით, რამდენი (თუ რომელიმე) ქლიავი არის საწყობში. გამოყენებით NULL ღირებულება, გვექნება ინვენტარი მაგიდა ნაჩვენები ცხრილში.

ხილის სტენდი ინვენტარი

ინვენტარი საქონელი რაოდენობა
1 ვაშლი 10
2 ფორთოხალი 3
3 ქლიავი NULL


სავარაუდოდ არასწორი იქნებოდა, რომ წიწაკის ჩანაწერების რაოდენობა 0 იყო, რადგან ეს გულისხმობდა, რომ ინვენტარის ნაკლებობა არ გვქონდა. პირიქით, ჩვენ შეიძლება რამდენიმე ქლიავი, მაგრამ ჩვენ უბრალოდ არ ვართ დარწმუნებული.

NULL თუ არა NULL?

მაგიდა შეიძლება იყოს შემუშავებული ან ნულოვანი ღირებულებების დასაშვებად.

აქ არის SQL მაგალითი, რომელიც ქმნის ინვენტარი მაგიდას, რომელიც საშუალებას იძლევა რამდენიმე NULL:

SQL> შესაქმნელად ცხრილი INVENTORY (ინვენტარი ID არ არის NULL, საქონელი VARCHAR (20) არ არის NULL, რაოდენობა INT);

ინვენტარი მაგიდა აქ არ იძლევა NULL მნიშვნელობებს ინვენტარი და ელემენტის სვეტებისთვის, მაგრამ მათ საშუალებას მისცემს მათ სვეტის სვეტისთვის.

მიუხედავად იმისა, რომ NULL ღირებულების შესანიშნავად ჯარიმა, NULL ღირებულებები შეიძლება გამოიწვიოს პრობლემები, რადგან ნებისმიერი შედარება ღირებულებების რომელშიც არის NULL ყოველთვის იწვევს NULL.

შეამოწმოთ თუ თქვენი ცხრილი შეიცავს NULL ღირებულებებს, გამოიყენეთ IS NULL ან არ არის NULL ოპერატორი. აქ არის NULL- ის მაგალითი:

SQL> SELECT INVENTORYID, ITEM, INVENTORY QUANTITY QUANTITY QUANTITY არ არის NULL;

აქ ჩვენი მაგალითის გათვალისწინებით, ეს დაბრუნდება:

ინვენტარი საქონელი რაოდენობა
3 ქლიავი

ოპერაცია NULLs

NULL- სთან მუშაობა ხშირად აწარმოებს NULL შედეგებს, რაც დამოკიდებულია SQL ოპერაციაზე . მაგალითად, ვთქვათ, რომ არის NULL:

არითმეტიკა ოპერატორები

შედარება ოპერატორები

ეს არის მხოლოდ რამდენიმე მაგალითი ოპერატორები, რომლებიც ყოველთვის დაბრუნდებიან NULL თუ ერთი ოპერაცია NULL. უფრო კომპლექსური queries არსებობს, და ყველა გართულებულია NULL ღირებულებები. Take home point არის ის, რომ, თუ თქვენ საშუალებას ნულოვანი ღირებულებების თქვენს მონაცემთა ბაზაში, მესმის შედეგებზე და მათთვის გეგმა.

ეს NULL მოკლედ!