Ringkasan :dalam tutorial ini, Anda akan belajar bagaimana menggunakan SQLite SELECT DISTINCT
klausa untuk menghapus baris duplikat di kumpulan hasil.
Pengantar SQLite SELECT DISTINCT
klausa
DISTINCT
klausa adalah klausa opsional dari SELECT
penyataan. DISTINCT
klausa memungkinkan Anda untuk menghapus baris duplikat di kumpulan hasil.
Pernyataan berikut mengilustrasikan sintaks DISTINCT
klausa:
SELECT DISTINCT select_list
FROM table;
Code language: SQL (Structured Query Language) (sql)
Dalam sintaks ini:
- Pertama,
DISTINCT
klausa harus muncul segera setelahSELECT
kata kunci. - Kedua, Anda menempatkan kolom atau daftar kolom setelah
DISTINCT
kata kunci. Jika Anda menggunakan satu kolom, SQLite menggunakan nilai di kolom tersebut untuk mengevaluasi duplikat. Jika Anda menggunakan beberapa kolom, SQLite menggunakan kombinasi nilai dalam kolom ini untuk mengevaluasi duplikat.
SQLite menganggap NULL
nilai sebagai duplikat. Jika Anda menggunakanDISTINCT
klausa dengan kolom yang memiliki NULL
nilai, SQLite akan menyimpan satu baris NULL
nilai.
Dalam teori basis data, jika kolom berisi NULL
nilai, artinya kami tidak memiliki informasi tentang kolom catatan tertentu atau informasi tersebut tidak berlaku.
Misalnya, jika pelanggan memiliki nomor telepon dengan NULL
value, artinya kami tidak memiliki informasi tentang nomor telepon pelanggan pada saat merekam informasi pelanggan atau pelanggan mungkin tidak memiliki nomor telepon sama sekali.
SQLite SELECT DISTINCT
contoh
Kami akan menggunakan customers
tabel dalam database sampel untuk demonstrasi.
Misalkan Anda ingin mengetahui kota tempat pelanggan berada, Anda dapat menggunakan SELECT
pernyataan untuk mendapatkan data dari city
kolom customers
tabel sebagai berikut:
SELECT city
FROM customers
ORDER BY city;
Code language: SQL (Structured Query Language) (sql)
Cobalah
Ini mengembalikan 59 baris. Ada beberapa baris duplikat seperti Berlin
London
, dan Mountain View
Untuk menghapus baris duplikat ini, gunakan DISTINCT
klausa sebagai berikut:
SELECT DISTINCT city
FROM customers
ORDER BY city;
Code language: SQL (Structured Query Language) (sql)
Cobalah
Ini mengembalikan 53 baris karena DISTINCT
klausa telah menghapus 6 baris duplikat.
SQLite SELECT DISTINCT
pada beberapa kolom
Pernyataan berikut menemukan kota dan negara semua pelanggan.
SELECT
city,
country
FROM
customers
ORDER BY
country;
Code language: SQL (Structured Query Language) (sql)
Cobalah
Kumpulan hasil berisi kota dan negara duplikat, mis., Sao Paulo di Brasil seperti yang ditunjukkan pada tangkapan layar di atas.
Untuk menghapus duplikat kota dan negara, Anda menerapkan DISTINCT
klausa ke kolom kota dan negara seperti yang ditunjukkan dalam kueri berikut:
SELECT DISTINCT
city,
country
FROM
customers
ORDER BY
country;
Code language: SQL (Structured Query Language) (sql)
Berikut adalah sebagian outputnya:
Seperti disebutkan sebelumnya, SQLite menggunakan kombinasi kota dan negara untuk mengevaluasi duplikatnya.
SQLite SELECT DISTINCT
dengan NULL
contoh
Pernyataan ini mengembalikan nama perusahaan pelanggan dari customers
tabel.
SELECT company
FROM customers;
Code language: SQL (Structured Query Language) (sql)
Cobalah
Ini mengembalikan 59 baris dengan banyak NULL
nilai.
Sekarang, jika Anda menerapkan DISTINCT
klausa ke pernyataan, itu hanya akan menyimpan satu baris dengan NULL
nilai.
Lihat pernyataan berikut:
SELECT DISTINCT company
FROM customers;
Code language: SQL (Structured Query Language) (sql)
Cobalah
Pernyataan mengembalikan 11 baris dengan satu NULL
nilai.
Perhatikan bahwa jika Anda memilih daftar kolom dari tabel dan ingin mendapatkan kombinasi unik dari beberapa kolom, Anda dapat menggunakan GROUP BY
klausa.
Dalam tutorial ini, Anda telah mempelajari cara menghapus baris duplikat dari kumpulan hasil menggunakan SQLite SELECT DISTINCT
klausa.