Apakah set null kosong di mysql?

Jika bidang dalam tabel bersifat opsional, dimungkinkan untuk menyisipkan catatan baru atau memperbarui catatan tanpa menambahkan nilai ke bidang ini. Kemudian, bidang tersebut akan disimpan dengan nilai NULL

Catatan. Nilai NULL berbeda dengan nilai nol atau bidang yang berisi spasi. Bidang dengan nilai NULL adalah bidang yang dibiarkan kosong selama pembuatan rekaman


Bagaimana Cara Menguji Nilai NULL?

It is not possible to test for NULL values with comparison operators, such as =, <, or <>.

Kami harus menggunakan operator IS NULL dan IS NOT NULL sebagai gantinya

Sintaks IS NULL

PILIH nama_kolom
DARI nama_tabel
DI MANA nama_kolom NULL;

Sintaks BUKAN NULL

PILIH nama_kolom
DARI nama_tabel
DI MANA nama_kolom BUKAN NULL;


Basis Data Demo

Di bawah ini adalah pilihan dari tabel "Pelanggan" di database sampel Northwind

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Jerman2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D. F. 05021Mexico3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D. F. 05023Meksiko4Di Sekitar TandukThomas Hardy120 Hanover Sq. LondonWA1 1DPUK5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Swedia

Ringkasan. dalam tutorial ini, Anda akan belajar cara bekerja dengan nilai MySQL

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5. Selain itu, Anda akan mempelajari beberapa fungsi berguna untuk menangani nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 secara efektif

Pengantar nilai MySQL INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);Code language: SQL (Structured Query Language) (sql)5

Di MySQL, nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
_5 berarti tidak diketahui. Nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 berbeda dari nol (

INSERT INTO leads(first_name,last_name,source,phone) VALUES ('Lily','Bush','Cold Calling','(408)-555-1234'), ('David','William','Web Search','(408)-888-6789');

Code language: SQL (Structured Query Language) (sql)
0) atau string kosong

INSERT INTO leads(first_name,last_name,source,phone) VALUES ('Lily','Bush','Cold Calling','(408)-555-1234'), ('David','William','Web Search','(408)-888-6789');

Code language: SQL (Structured Query Language) (sql)
1

Nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 tidak sama dengan apa pun, bahkan dirinya sendiri. Jika Anda membandingkan nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 dengan nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 lainnya atau nilai lainnya, hasilnya adalah

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 karena nilai dari setiap nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 tidak diketahui

Umumnya, Anda menggunakan nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
_5 untuk menunjukkan bahwa data tersebut hilang, tidak diketahui, atau tidak berlaku. Misalnya, nomor telepon calon pelanggan mungkin

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 dan dapat ditambahkan nanti

Saat membuat tabel, Anda dapat menentukan apakah kolom menerima nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 atau tidak dengan menggunakan batasan

UPDATE leads SET phone = NULL WHERE id = 3;

Code language: SQL (Structured Query Language) (sql)
0

Misalnya, pernyataan berikut membuat tabel ________15______1

DROP TABLE IF EXISTS leads; CREATE TABLE leads ( id INT AUTO_INCREMENT PRIMARY KEY, first_name VARCHAR(50) NOT NULL, last_name VARCHAR(50) NOT NULL, source VARCHAR(255) NOT NULL, email VARCHAR(100), phone VARCHAR(25) );

Code language: SQL (Structured Query Language) (sql)

Dalam tabel

UPDATE leads SET phone = NULL WHERE id = 3;

Code language: SQL (Structured Query Language) (sql)
_1 ini, kolom

UPDATE leads SET phone = NULL WHERE id = 3;

Code language: SQL (Structured Query Language) (sql)
3 adalah kolom primary key, oleh karena itu, tidak menerima nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5

Kolom

UPDATE leads SET phone = NULL WHERE id = 3;

Code language: SQL (Structured Query Language) (sql)
5,

UPDATE leads SET phone = NULL WHERE id = 3;

Code language: SQL (Structured Query Language) (sql)
6, dan

UPDATE leads SET phone = NULL WHERE id = 3;

Code language: SQL (Structured Query Language) (sql)
7 menggunakan batasan

UPDATE leads SET phone = NULL WHERE id = 3;

Code language: SQL (Structured Query Language) (sql)
8, oleh karena itu, Anda tidak dapat memasukkan nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 ke dalam kolom ini, sedangkan kolom

SELECT * FROM leads ORDER BY phone;

Code language: SQL (Structured Query Language) (sql)
0 dan

SELECT * FROM leads ORDER BY phone;

Code language: SQL (Structured Query Language) (sql)
1 menerima nilai NULL

Anda dapat menggunakan nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
_5 dalam pernyataan

SELECT * FROM leads ORDER BY phone;

Code language: SQL (Structured Query Language) (sql)
3 untuk menentukan bahwa data tersebut hilang. Misalnya, pernyataan berikut menyisipkan baris ke dalam tabel

UPDATE leads SET phone = NULL WHERE id = 3;

Code language: SQL (Structured Query Language) (sql)
1. Karena nomor teleponnya hilang, maka digunakan nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)

Karena nilai default kolom email adalah

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5, Anda dapat menghilangkan email di pernyataan

SELECT * FROM leads ORDER BY phone;

Code language: SQL (Structured Query Language) (sql)
3 sebagai berikut

INSERT INTO leads(first_name,last_name,source,phone) VALUES ('Lily','Bush','Cold Calling','(408)-555-1234'), ('David','William','Web Search','(408)-888-6789');

Code language: SQL (Structured Query Language) (sql)
Apakah set null kosong di mysql?
Apakah set null kosong di mysql?

MySQL SELECT * FROM leads ORDER BY phone;Code language: SQL (Structured Query Language) (sql)8 dalam pernyataan SELECT * FROM leads ORDER BY phone;Code language: SQL (Structured Query Language) (sql)9

Untuk menetapkan nilai kolom ke

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
_5, Anda menggunakan operator penugasan (

SELECT * FROM leads ORDER BY phone DESC;

Code language: SQL (Structured Query Language) (sql)
1). Misalnya, untuk memperbarui telepon dari

SELECT * FROM leads ORDER BY phone DESC;

Code language: SQL (Structured Query Language) (sql)
_2 ke

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5, Anda menggunakan pernyataan

SELECT * FROM leads ORDER BY phone;

Code language: SQL (Structured Query Language) (sql)
9 berikut

UPDATE leads SET phone = NULL WHERE id = 3;

Code language: SQL (Structured Query Language) (sql)

MySQL SELECT * FROM leads ORDER BY phone DESC;Code language: SQL (Structured Query Language) (sql)5 dengan INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);Code language: SQL (Structured Query Language) (sql)5

Jika Anda menggunakan klausa

SELECT * FROM leads ORDER BY phone DESC;

Code language: SQL (Structured Query Language) (sql)
5 untuk mengurutkan hasil yang ditetapkan dalam urutan menaik, MySQL menganggap nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 lebih rendah dari nilai lain, oleh karena itu, MySQL menyajikan nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 terlebih dahulu

Pernyataan berikut mengurutkan prospek berdasarkan nomor telepon dalam urutan menaik

SELECT * FROM leads ORDER BY phone;

Code language: SQL (Structured Query Language) (sql)
_
Apakah set null kosong di mysql?
Apakah set null kosong di mysql?

Jika Anda menggunakan

SELECT * FROM leads WHERE phone IS NULL;

Code language: SQL (Structured Query Language) (sql)
0, nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 muncul di akhir rangkaian hasil. Lihat contoh berikut.

SELECT * FROM leads ORDER BY phone DESC;

Code language: SQL (Structured Query Language) (sql)
Apakah set null kosong di mysql?
Apakah set null kosong di mysql?

Untuk menguji

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 dalam kueri, gunakan operator

SELECT * FROM leads WHERE phone IS NULL;

Code language: SQL (Structured Query Language) (sql)
3 atau

SELECT * FROM leads WHERE phone IS NULL;

Code language: SQL (Structured Query Language) (sql)
4 dalam klausa

SELECT * FROM leads WHERE phone IS NULL;

Code language: SQL (Structured Query Language) (sql)
5.

Misalnya, untuk mendapatkan prospek yang belum memberikan nomor telepon, Anda menggunakan operator

SELECT * FROM leads WHERE phone IS NULL;

Code language: SQL (Structured Query Language) (sql)
6 sebagai berikut

SELECT * FROM leads WHERE phone IS NULL;

Code language: SQL (Structured Query Language) (sql)
Apakah set null kosong di mysql?
Apakah set null kosong di mysql?

Anda dapat menggunakan operator

SELECT * FROM leads WHERE phone IS NULL;

Code language: SQL (Structured Query Language) (sql)
7 untuk mendapatkan semua prospek yang memberikan alamat email.

SELECT * FROM leads WHERE email IS NOT NULL;

Code language: SQL (Structured Query Language) (sql)
Apakah set null kosong di mysql?
Apakah set null kosong di mysql?

Meskipun

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 tidak sama dengan

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5, dua nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 sama dalam klausa

SELECT * FROM leads WHERE email IS NOT NULL;

Code language: SQL (Structured Query Language) (sql)
1.

SELECT id, first_name, last_name, email, phone FROM leads GROUP BY email;

Code language: SQL (Structured Query Language) (sql)
Apakah set null kosong di mysql?
Apakah set null kosong di mysql?

Kueri mengembalikan hanya dua baris karena baris yang kolom emailnya adalah

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 dikelompokkan menjadi satu.

MySQL INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);Code language: SQL (Structured Query Language) (sql)5 dan indeks SELECT * FROM leads WHERE email IS NOT NULL;Code language: SQL (Structured Query Language) (sql)4

Saat Anda menggunakan batasan UNIK atau indeks UNIK pada kolom, Anda dapat memasukkan beberapa nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 ke dalam kolom tersebut. Tidak apa-apa karena dalam kasus ini, MySQL menganggap nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 berbeda

Mari verifikasi poin ini dengan membuat indeks

SELECT * FROM leads WHERE email IS NOT NULL;

Code language: SQL (Structured Query Language) (sql)
4 untuk kolom

SELECT * FROM leads ORDER BY phone;

Code language: SQL (Structured Query Language) (sql)
1

CREATE UNIQUE INDEX idx_phone ON leads(phone);

Code language: SQL (Structured Query Language) (sql)

Perhatikan bahwa jika Anda menggunakan mesin penyimpanan BDB, MySQL menganggap nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 sama sehingga Anda tidak dapat memasukkan beberapa nilai

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 ke dalam kolom yang memiliki batasan unik

MySQL INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);Code language: SQL (Structured Query Language) (sql)_5 fungsi

MySQL menyediakan beberapa fungsi berguna yang menangani NULL secara efektif.

SELECT id, first_name, last_name, email, phone FROM leads GROUP BY email;

Code language: SQL (Structured Query Language) (sql)
2,

SELECT id, first_name, last_name, email, phone FROM leads GROUP BY email;

Code language: SQL (Structured Query Language) (sql)
3, dan

SELECT id, first_name, last_name, email, phone FROM leads GROUP BY email;

Code language: SQL (Structured Query Language) (sql)
4

Fungsi

SELECT id, first_name, last_name, email, phone FROM leads GROUP BY email;

Code language: SQL (Structured Query Language) (sql)
_2 menerima dua parameter. Fungsi

SELECT id, first_name, last_name, email, phone FROM leads GROUP BY email;

Code language: SQL (Structured Query Language) (sql)
_2 mengembalikan argumen pertama jika bukan

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5, jika tidak, mengembalikan argumen kedua

Misalnya, pernyataan berikut mengembalikan nomor telepon jika bukan

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 sebaliknya, pernyataan ini mengembalikan

SELECT id, first_name, last_name, email, phone FROM leads GROUP BY email;

Code language: SQL (Structured Query Language) (sql)
9 bukan

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
0
Apakah set null kosong di mysql?
Apakah set null kosong di mysql?

Fungsi

SELECT id, first_name, last_name, email, phone FROM leads GROUP BY email;

Code language: SQL (Structured Query Language) (sql)
3 menerima daftar argumen dan mengembalikan argumen non-NULL pertama. Misalnya, Anda dapat menggunakan fungsi

SELECT id, first_name, last_name, email, phone FROM leads GROUP BY email;

Code language: SQL (Structured Query Language) (sql)
_3 untuk menampilkan informasi kontak prospek berdasarkan prioritas informasi dalam urutan berikut. telepon, email, dan N/A.

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
1
Apakah set null kosong di mysql?
Apakah set null kosong di mysql?

Fungsi

SELECT id, first_name, last_name, email, phone FROM leads GROUP BY email;

Code language: SQL (Structured Query Language) (sql)
4 menerima dua argumen. Jika kedua argumen sama, fungsi ________65______4 mengembalikan

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5. Jika tidak, ia mengembalikan argumen pertama.

Fungsi

SELECT id, first_name, last_name, email, phone FROM leads GROUP BY email;

Code language: SQL (Structured Query Language) (sql)
_4 berguna ketika Anda memiliki

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 dan nilai string kosong dalam kolom. Misalnya, secara tidak sengaja, Anda menyisipkan baris berikut ke dalam tabel

UPDATE leads SET phone = NULL WHERE id = 3;

Code language: SQL (Structured Query Language) (sql)
1

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
_2

Telepon adalah string kosong, bukan

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5

Jika Anda ingin mendapatkan informasi kontak prospek, Anda berakhir dengan telepon kosong alih-alih email sebagai permintaan berikut

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
1
Apakah set null kosong di mysql?
Apakah set null kosong di mysql?

Untuk memperbaikinya, Anda menggunakan fungsi

SELECT id, first_name, last_name, email, phone FROM leads GROUP BY email;

Code language: SQL (Structured Query Language) (sql)
4 untuk membandingkan telepon dengan string kosong, jika sama, ia mengembalikan

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5, jika tidak, ia mengembalikan nomor telepon.

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
4
Apakah set null kosong di mysql?
Apakah set null kosong di mysql?

Dalam tutorial ini, Anda telah mempelajari cara bekerja dengan MySQL

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 dan cara menggunakan beberapa fungsi praktis untuk menangani

INSERT INTO leads(first_name,last_name,source,email,phone) VALUE('John','Doe','Web Search','[email protected]',NULL);

Code language: SQL (Structured Query Language) (sql)
5 dalam kueri.

Apa arti set kosong di MySQL?

Jika ada 'set kosong' di set hasil kueri MySQL maka itu berarti bahwa MySQL tidak mengembalikan baris dan juga tidak ada kesalahan dalam kueri.

Apakah NULL atau kosong di MySQL?

Konsep NULL dan string kosong sering menimbulkan kebingungan karena banyak orang menganggap NULL sama dengan string kosong MySQL. Namun, bukan itu masalahnya. Sebuah string kosong adalah contoh string dengan panjang nol. Namun, NULL tidak memiliki nilai sama sekali .

Apakah NULL mengatur 0 MySQL?

Gunakan fungsi IFNULL atau COALESCE() untuk mengonversi MySQL NULL ke 0 . Sisipkan beberapa record dalam tabel menggunakan perintah insert. Tampilkan semua rekaman dari tabel menggunakan pernyataan pilih.

Bagaimana cara mengatur nilai kosong ke NULL di SQL?

Anda perlu menggunakan fungsi NULLIF() dari MySQL . Sintaksnya adalah sebagai berikut. SELECT NULLIF(yourCoumnName,' ') sebagai anyVariableName dari yourTableName; .