Terkadang Anda mungkin perlu membandingkan kolom dengan nilai nol atau membandingkan dua kolom yang salah satunya memiliki nilai nol, atau bahkan melakukan pemeriksaan nol untuk kolom. Pada artikel ini kita akan melihat bagaimana membandingkan nilai null di MySQL. Anda dapat menggunakannya untuk perbandingan Null di MySQL.
Cara Membandingkan Nilai Null di MySQL
Misalkan Anda memiliki tabel berikut penjualan(id, tanggal_pesanan, harga_biaya, harga_jual)
mysql> create table sales( id int, order_date date, cost_price int, selling_price int); mysql> describe sales; +---------------+---------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------------+---------+------+-----+---------+-------+ | id | int(11) | YES | | NULL | | | order_date | date | YES | | NULL | | | cost_price | int(11) | YES | | NULL | | | selling_price | int(11) | YES | | NULL | | +---------------+---------+------+-----+---------+-------+ mysql> insert into sales(id,order_date,cost_price,selling_price) values(1,'2020-11-01',150,250), (2,'2020-11-02',200,300); mysql> insert into sales(id,order_date, cost_price) values(3, '2020-11-03',100); mysql> insert into sales(id,order_date, selling_price) values(4, '2020-11-03',100); mysql> select * from sales; +------+------------+------------+---------------+ | id | order_date | cost_price | selling_price | +------+------------+------------+---------------+ | 1 | 2020-11-01 | 150 | 250 | | 2 | 2020-11-02 | 200 | 300 | | 3 | 2020-11-03 | 100 | NULL | | 4 | 2020-11-03 | NULL | 100 | +------+------------+------------+---------------+
Katakanlah Anda ingin memilih baris di mana harga biaya nol. Biasanya, Anda akan menggunakan ekspresi seperti cost_price=null tetapi tidak bekerja dengan nilai NULL. Dalam hal perbandingan nol, Anda perlu menggunakan ADALAH operator, yaitu cost_price IS null
Jadi kueri SQL berikut tidak akan berfungsi
mysql> select * from sales where cost_price=null; Empty set (0.00 sec)
Kueri SQL berikut akan berfungsi . Berikut adalah kueri SQL untuk memilih baris di mana cost_price adalah nol.
mysql> select * from sales where cost_price is null; +------+------------+------------+---------------+ | id | order_date | cost_price | selling_price | +------+------------+------------+---------------+ | 4 | 2020-11-03 | NULL | 100 | +------+------------+------------+---------------+
Baca Juga :Cara Membandingkan Dua Kolom di MySQL
Demikian pula, berikut adalah kueri SQL untuk memilih baris di mana cost_price bukan NULL. Dalam hal ini, kami menggunakan BUKAN operator.
mysql> select * from sales where cost_price is not null; +------+------------+------------+---------------+ | id | order_date | cost_price | selling_price | +------+------------+------------+---------------+ | 1 | 2020-11-01 | 150 | 250 | | 2 | 2020-11-02 | 200 | 300 | | 3 | 2020-11-03 | 100 | NULL | +------+------------+------------+---------------+
Anda dapat menggunakan IS NULL dan IS NOT NULL dengan pernyataan UPDATE, INSERT, dan DELETE.
Dengan Pernyataan UPDATE
mysql> update sales set selling_price=350 where cost_price is null; mysql> select * from sales; +------+------------+------------+---------------+ | id | order_date | cost_price | selling_price | +------+------------+------------+---------------+ | 1 | 2020-11-01 | 150 | 250 | | 2 | 2020-11-02 | 200 | 300 | | 3 | 2020-11-03 | 100 | NULL | | 4 | 2020-11-03 | NULL | 350 | +------+------------+------------+---------------+
Baca Juga :Cara Mendapatkan Setiap Nth Row di MySQL
Dengan Pernyataan INSERT
Berikut adalah contoh yang menggunakan Perbandingan MySQL NULL dalam pernyataan INSERT.
mysql> insert into new_sales(id,order_date, cost_price, selling_price) select * from sales where cost_price is null;
Dengan Pernyataan HAPUS
Berikut adalah contoh untuk menggunakan perbandingan Null di Hapus Pernyataan.
mysql> delete from sales where cost_price is null; mysql> select * from sales; +------+------------+------------+---------------+ | id | order_date | cost_price | selling_price | +------+------------+------------+---------------+ | 1 | 2020-11-01 | 150 | 250 | | 2 | 2020-11-02 | 200 | 300 | | 3 | 2020-11-03 | 100 | NULL | +------+------------+------------+---------------+
Semoga artikel ini membantu Anda membandingkan nilai NULL di MySQL. Ubiq memudahkan untuk memvisualisasikan data, dan memantaunya di dasbor waktu nyata. Coba Ubiq gratis.