Tutorial WHERE NOT IN Di MySQL

Created at by Aris Munandar

Penggunaan WHERE NOT IN di MySQL berfungsi untuk memeriksa ketidakberadaan data di daftar data yang telah ditentukan secara spesifik. Operator NOT IN juga bisa digunakan untuk mengecualikan data tertentu.

Berikut ini adalah cara menggunakan WHERE NOT IN di MySQL.

WHERE value NOT IN (value1, value2, value3, ...)

Pada dasarnya, operator NOT IN adalah dua operator yang berbeda, namun apabila di gabungkan NOT dengan IN maka fungsinya akan meniadakan data yang ada di IN, misalnya jika hanya menggunakan IN tanpa NOT maka MySQL akan mengembalikan angka 1 atau TRUE jika nilai yang di cari ada di daftar IN, sedangkan jika ditambah NOT dikiri IN maka, jika nilai yang di cari ada akan mengembalikan angka 0 atau FALSE. Contoh penggunaan dibawah ini.

Baca juga: Tutorial WHERE IN Di MySQL

Kueri jika data yang di cari ada.

SELECT 1 NOT IN (1,2,3)

Dan jika data yang di cari tidak ada.

SELECT 4 NOT IN (1,2,3)

Pada kueri pertama diatas akan mengembalikan nilai 0 atau FALSE, karena angka 1 ada didalam daftar IN, sedangkan kueri kedua akan mengembalikan nilai 1 atau TRUE, karena angka 4 tidak ada didalam daftar IN.

WHERE NOT IN FALSE dan TRUE

Operator NOT IN akan mengembalikan nilai NULL jika data pencari adalah NULL. Sebagai contoh kueri dibawah ini.

SELECT NULL NOT IN (1,2,3)Code language: PHP (php)

Secara teknikal penggunaan NOT IN sama dengan NOT dan penggunaan OR didalam kurung. Sebagai contoh.

SELECT NOT (value = value1 OR value = value2 OR value = value3 OR ...)

Atau juga sama dengan penggunaan operator tidak sama atau bukan “<>“.

Contoh penggunaan WHERE NOT IN di MySQL

Pada bagian ini kita akan mencoba secara praktikal bagaimana mana penggunaan WHERE NOT IN di MySQL jika dengan menggunakan data yang ada didalam tabel.

Namun sebelum itu buatlah tabel baru dan isi beberapa data didalam tabel tersebut, di tutorial ini penulis sudah membuat kueri untuk membuat tabel baru dengan nama companies dengan menjalankan sintak SQL dibawah ini.

CREATE TABLE `companies` (
    `id` mediumint(8) unsigned NOT NULL auto_increment,
    `company` varchar(255),
    `city` varchar(255),
    `country` varchar(100) default NULL,
    PRIMARY KEY (`id`)
) AUTO_INCREMENT=1;Code language: JavaScript (javascript)

Selanjutnya untuk mengisi data didalam tabel tersebut, jalankan kueri INSERT dibawah ini.

INSERT INTO `companies` (`company`,`city`,`country`)
VALUES
    ("Sagittis Lobortis Mauris Foundation","Schepdaal","Belgium"),
    ("Nunc Quis Arcu Foundation","Mokpo","Belgium"),
    ("Ligula Aenean Inc.","Itajaí","Pakistan"),
    ("Suspendisse Dui Fusce LLC","Jiangxi","China"),
    ("Pretium Neque Inc.","Forchtenstein","China"),
    ("Risus Duis Incorporated","Lamitan","New Zealand"),
    ("Scelerisque Neque Inc.","Belfast","Sweden"),
    ("Ipsum Dolor Sit Limited","Khuzdar","Peru"),
    ("Litora Torquent Associates","La Roche-sur-Yon","United States"),
    ("Pede Praesent Eu Foundation","Lamitan","New Zealand");Code language: JavaScript (javascript)

Jika sudah maka data-data diatas akan terlihat seperti tabel dibawah ini.

Data tabel companies

Selanjutnya pada kueri dibawah ini akan mengecualikan beberapa data yang ada didalam tabel tersebut berdasarkan kolom id.

SELECT * FROM companies WHERE id NOT IN (1, 2, 3);

Dari kueri diatas maka akan mendapatkan hasil seperti pada gambar tabel dibawah ini.

Hasil kueri WHERE NOT IN di MySQL

Kesimpulannya adalah penggunaan NOT IN jika digunakan untuk menunjuk tabel tertentu maka akan mengecualikan data, dan juga dapat memeriksa apakah ada yang dicari ada atau tidak.

Demikian tutorial ini, semoga bermanfaat, dan jika ada pertanyaan tinggalkan komentar dibawah ini ya.

Comments

Congrats, you have the opportunity to be the first commenter on this article. Have questions or suggestions? Please leave a comment to start discussion.

Leave comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Discover more from Bahasaweb.com

Subscribe now to keep reading and get access to the full archive.

Continue reading