ສິ່ງທີ່ທ່ານຄວນຮູ້ກ່ຽວກັບຄຸນຄ່າ NULL

ເຂົ້າໃຈການໃຊ້ NULLs ເພື່ອຫຼີກເວັ້ນບັນຫາບັນຫາໃນຖານຂໍ້ມູນ

ຜູ້ໃຊ້ໃຫມ່ໃນໂລກຂອງ ຖານຂໍ້ມູນ ແມ່ນມັກຈະສັບສົນໂດຍມູນຄ່າພິເສດໂດຍສະເພາະກັບພາກສະຫນາມ - ຄ່າ NULL. ມູນຄ່ານີ້ສາມາດພົບໄດ້ໃນເຂດທີ່ມີຂໍ້ມູນໃດໆແລະມີຄວາມຫມາຍພິເສດຫຼາຍໃນສະພາບການຂອງຖານຂໍ້ມູນທີ່ກ່ຽວຂ້ອງ. ມັນອາດຈະດີທີ່ສຸດທີ່ຈະເລີ່ມຕົ້ນການສົນທະນາຂອງພວກເຮົາກ່ຽວກັບ NULL ດ້ວຍຄໍາທີ່ບໍ່ພໍເທົ່າໃດກ່ຽວກັບສິ່ງທີ່ NULL ບໍ່ແມ່ນ :

ແທນທີ່ຈະ, NULL ແມ່ນມູນຄ່າທີ່ນໍາໃຊ້ເພື່ອເປັນຕົວແທນຂອງຂໍ້ມູນທີ່ບໍ່ຮູ້ຈັກ. ເລື້ອຍຄັ້ງ, ຜູ້ຂຽນໂປລແກລມຖານຂໍ້ມູນຈະໃຊ້ຄໍາວ່າ "ຄ່າ NULL" ແຕ່ນີ້ບໍ່ຖືກຕ້ອງ. ຈືຂໍ້ມູນການ: NULL ເປັນມູນຄ່າທີ່ບໍ່ຮູ້ຈັກທີ່ພາກສະຫນາມປາກົດຂື້ນ.

NULL ໃນໂລກທີ່ແທ້ຈິງ

ໃຫ້ເບິ່ງຕົວຢ່າງທີ່ງ່າຍດາຍ: ຕາຕະລາງປະກອບສໍາລັບການເກັບຫມາກໄມ້. ສົມມຸດວ່າຄັງເກັບຂອງພວກເຮົາມີ 10 ຫມາກໂປແລະສາມຫມາກກ້ຽງ. ພວກເຮົາຍັງ stock plums, ແຕ່ຂໍ້ມູນສິນຄ້າຄົງຄັງຂອງພວກເຮົາແມ່ນບໍ່ຄົບຖ້ວນແລະພວກເຮົາບໍ່ຮູ້ວ່າຈໍານວນ plums (ຖ້າມີ) ແມ່ນຢູ່ໃນຫຼັກຊັບ. ການນໍາໃຊ້ມູນຄ່າ NULL, ພວກເຮົາຈະມີຕາຕະລາງສິນຄ້າສະແດງໃຫ້ເຫັນຢູ່ໃນຕາຕະລາງຂ້າງລຸ່ມນີ້.

Fruit Stand Inventory

InventoryID Item Quantity
1 ແອບເປີ້ນ 10
2 Oranges 3
3 Plums NULL


ມັນຈະແຈ້ງບໍ່ຖືກຕ້ອງທີ່ຈະປະກອບດ້ວຍປະລິມານ 0 ສໍາລັບການບັນທຶກ plum, ເນື່ອງຈາກວ່າມັນອາດຈະຫມາຍເຖິງວ່າພວກເຮົາ ບໍ່ມີ plum ໃນ inventory. ກົງກັນຂ້າມ, ພວກເຮົາອາດຈະມີບາງເມັດ, ແຕ່ພວກເຮົາກໍ່ບໍ່ແນ່ໃຈວ່າ.

ເພື່ອ NULL ຫຼືບໍ່ NULL?

ຕາຕະລາງສາມາດໄດ້ຮັບການອອກແບບເພື່ອອະນຸຍາດໃຫ້ຄ່າ NULL ຫຼືບໍ່.

ນີ້ແມ່ນຕົວຢ່າງ SQL ທີ່ສ້າງຕາຕະລາງສິນຄ້າທີ່ອະນຸຍາດໃຫ້ບາງ NULLs:

SQL> CREATE TABLE INVENTORY (InventoryID INT NOT NULL, Item VARCHAR (20) NOT NULL, Quantity INT)

ຕາຕະລາງສິນຄ້ານີ້ບໍ່ອະນຸຍາດໃຫ້ຄ່າ NULL ສໍາລັບຄໍລໍາ InventoryID ແລະຄໍລໍາລາຍການ, ແຕ່ວ່າມັນອະນຸຍາດໃຫ້ພວກເຂົາສໍາລັບຄໍລໍາ Quantity .

ໃນຂະນະທີ່ອະນຸຍາດໃຫ້ມູນຄ່າ NULL ຖືກປັບສົມບູນ, ຄ່າ NULL ສາມາດເຮັດໃຫ້ເກີດບັນຫາໄດ້ເນື່ອງຈາກການປຽບທຽບຄ່າທີ່ຫນຶ່ງແມ່ນ NULL ສະເຫມີຜົນໃນ NULL.

ເພື່ອກວດສອບວ່າຕາຕະລາງຂອງທ່ານມີບັນດາ NULL, ໃຫ້ໃຊ້ IS NULL ຫຼື IS NOT NULL operator. ນີ້ແມ່ນຕົວຢ່າງຂອງ IS NULL:

SQL SELECT INVENTORYID, ITEM, QUANTITY FROM INVENTORY WHERE QUANTITY IS NOT NULL;

ໃຫ້ຕົວຢ່າງຂອງພວກເຮົານີ້, ນີ້ຈະກັບມາ:

InventoryID Item Quantity
3 Plums

ດໍາເນີນການກ່ຽວກັບ NULLs

ການເຮັດວຽກກັບຄ່າ NULL ມັກຈະຜະລິດຜົນ NULL, ຂຶ້ນກັບການ ດໍາເນີນງານ SQL . ຕົວຢ່າງ, ສົມມຸດວ່າ A ແມ່ນ NULL:

Arithmetic Operators

Comparison Operators

ເຫຼົ່ານີ້ແມ່ນພຽງແຕ່ຕົວຢ່າງຂອງຕົວປະຕິບັດທີ່ຈະກັບຄືນ NULL ຖ້າຫນຶ່ງ operand ແມ່ນ NULL. ຫລາຍຄໍາຖາມທີ່ສັບສົນຫຼາຍ, ແລະທັງຫມົດແມ່ນສັບສົນໂດຍຄ່າ NULL. ຈຸດເດັ່ນຂອງບ້ານແມ່ນວ່າ, ຖ້າທ່ານອະນຸຍາດໃຫ້ຄ່າ NULL ໃນຖານຂໍ້ມູນຂອງທ່ານ, ເຂົ້າໃຈຜົນກະທົບແລະວາງແຜນສໍາລັບພວກມັນ.

That's NULL in a nutshell!