Yang Harus Anda Ketahui Tentang Nilai NULL

Memahami Penggunaan NULL untuk Menghindari Masalah Database

Pengguna baru ke dunia database sering bingung dengan nilai khusus khusus ke lapangan - nilai NULL. Nilai ini dapat ditemukan di bidang yang berisi semua jenis data dan memiliki arti yang sangat khusus dalam konteks basis data relasional. Mungkin yang terbaik adalah memulai diskusi kita tentang NULL dengan beberapa kata tentang apa yang NULL tidak :

Sebaliknya, NULL adalah nilai yang digunakan untuk mewakili bagian data yang tidak diketahui. Seringkali, programmer database akan menggunakan frase "nilai NULL", tetapi ini tidak benar. Ingat: NULL adalah nilai yang tidak diketahui di mana bidang tersebut tampak kosong.

NULL di Dunia Nyata

Mari kita lihat contoh sederhana: tabel yang berisi inventaris untuk kedai buah. Misalkan inventaris kami berisi 10 apel dan tiga jeruk. Kami juga menyediakan plum, tetapi informasi persediaan kami tidak lengkap dan kami tidak tahu berapa banyak (jika ada) plum yang tersedia. Dengan menggunakan nilai NULL, kita akan memiliki tabel inventaris yang ditunjukkan pada tabel di bawah.

Inventarisasi Buah Berdiri

InventoryID Barang Kuantitas
1 Apel 10
2 Jeruk 3
3 Plum BATAL


Ini jelas tidak benar untuk memasukkan kuantitas 0 untuk catatan plum, karena itu akan berarti bahwa kita tidak memiliki plum dalam persediaan. Sebaliknya, kita mungkin memiliki buah prem, tetapi kita tidak yakin.

Ke NULL atau NOT NULL?

Sebuah tabel dapat dirancang untuk memungkinkan nilai NULL atau tidak.

Berikut ini contoh SQL yang membuat tabel Inventory yang memungkinkan beberapa NULL:

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

Tabel Inventaris di sini tidak mengizinkan nilai NULL untuk InventoryID dan kolom Item , tetapi memungkinkannya untuk kolom Kuantitas .

Meskipun memungkinkan nilai NULL baik-baik saja, nilai NULL dapat menyebabkan masalah karena setiap perbandingan nilai di mana yang NULL selalu menghasilkan NULL.

Untuk memeriksa apakah tabel Anda mengandung nilai NULL, gunakan operator IS NULL atau IS NOT NULL. Berikut ini contoh IS NULL:

SQL> SELECT INVENTORYID, ITEM, QUANTITY FROM INVENTORY WHERE QUANTITY TIDAK NULL;

Diberikan contoh kami di sini, ini akan kembali:

InventoryID Barang Kuantitas
3 Plum

Beroperasi pada NULL

Bekerja dengan nilai NULL sering menghasilkan hasil NULL, tergantung pada operasi SQL . Misalnya, dengan asumsi bahwa A adalah NULL:

Operator Aritmatika

Operator Perbandingan

Ini hanyalah beberapa contoh operator yang akan selalu mengembalikan NULL jika satu operand adalah NULL. Banyak pertanyaan yang lebih kompleks ada, dan semuanya dipersulit oleh nilai NULL. Titik pulang adalah bahwa, jika Anda mengizinkan nilai NULL dalam database Anda, pahami implikasinya dan rencanakan untuknya.

Itu NULL singkatnya!