MySQL - NOT Operator
Hai there, bakal ahli pangkalan data! Hari ini, kita akan melihat dunia yang menakjubkan penggunaan operator NOT dalam MySQL. Jangan khawatir jika anda baru dalam hal ini - saya akan menjadi panduannya yang ramah melalui pengembaraan ini, dan menjelang akhir, anda akan menjadi pengguna operator NOT seperti seorang pro!
MySQL NOT Operator
Operator NOT adalah seperti seorang pemberontak dalam dunia MySQL. Ini tentang penyangkalan, membalikkan hal-hal, dan berkata "tidak" kepada syarat-syarat. Bayangkan anda adalah seorang guru (seperti saya!) dan anda ingin mencari semua pelajar yang belum mengajukan tugasan rumah. Itu adalah di mana NOT berguna!
Mari kita mulai dengan contoh yang sederhana:
SELECT * FROM students WHERE NOT grade = 'A';
Query ini akan mengambil semua pelajar yang tidak mendapat nilai A. Itu seperti mengatakan, "Tunjukkan kepada saya semua orang kecuali pelajar-pelajar nilai A." Bagus, kan?
Ini adalah contoh lain:
SELECT * FROM products WHERE NOT price > 100;
Ini akan memberikan kita semua produk yang tidak berharga lebih dari $100. Itu adalah seperti mengatakan "Tunjukkan kepada saya produk yang berharga $100 atau kurang."
NOT dengan Operator IN
Sekarang, mari kita tingkatkan dan gabungkan NOT dengan operator IN. Operator IN adalah seperti daftar VIP, dan NOT IN adalah mengatakan "semua orang yang tidak dalam daftar."
SELECT * FROM fruits WHERE name NOT IN ('apple', 'banana', 'orange');
Query ini akan menunjukkan semua buah kecuali apel, pisang, dan jeruk. Itu seperti memiliki sebuah mangkuk buah dan memilih semua buah kecuali tiga buah itu.
NOT dengan Operator IS NULL
Nilai NULL dalam pangkalan data adalah seperti arwah - mereka ada, tetapi tidak benar-benar. Operator NOT IS NULL membantu kita menemukan semua nilai bukan arwah.
SELECT * FROM customers WHERE phone_number IS NOT NULL;
Ini akan menemukan semua pelanggan yang telah memberikan nomor telepon. Itu seperti memanggil "Marco!" dan menunggu semua orang yang dapat menjawab "Polo!"
NOT dengan Operator LIKE
Operator LIKE digunakan untuk pencocokan pola, dan NOT LIKE adalah saudara jahatnya. Itu sempurna untuk menemukan hal-hal yang tidak cocok dengan pola tertentu.
SELECT * FROM books WHERE title NOT LIKE 'The%';
Query ini akan menemukan semua buku yang judulnya tidak dimulai dengan "The". Itu seperti mengatur rak buku dan menempatkan semua buku "The" di satu sisi dan semua yang lain di sisi lain.
NOT dengan Operator BETWEEN
BETWEEN membantu kita menemukan nilai dalam rentang, dan NOT BETWEEN melakukan hal yang sebaliknya. Itu seperti menyiapkan zona "Hanya Anak-Anak" dan kemudian menemukan semua orang yang tidak diizinkan masuk.
SELECT * FROM employees WHERE age NOT BETWEEN 25 AND 35;
Ini akan menemukan semua karyawan yang berusia kurang dari 25 tahun atau lebih dari 35 tahun. Itu adalah cara bagus untuk segmentasi data!
NOT dengan Statement UPDATE
Operator NOT tidak hanya untuk statement SELECT. Kita juga dapat menggunakannya dalam statement UPDATE! Mari lihat contoh:
UPDATE inventory SET in_stock = 0 WHERE NOT product_id IN (101, 102, 103);
Query ini mengubah inventori, menset semua produk menjadi tidak tersedia kecuali produk dengan ID 101, 102, dan 103. Itu seperti membersihkan toko Anda tetapi menjaga beberapa item khusus tersedia.
NOT dengan Statement DELETE
Kita juga dapat menggunakan NOT dalam statement DELETE. Hatikan saat menggunakan ini - itu kuat!
DELETE FROM old_records WHERE NOT date_created > '2020-01-01';
Ini akan menghapus semua rekord yang dibuat sebelum 2020. Itu seperti melakukan pembersihan besar-besaran dan menjaga hanya item yang lebih baru.
Operator NOT dalam Program Klien
Sekarang, mari lihat bagaimana kita dapat menggunakan operator NOT dalam program klien. Ini adalah contoh sederhana Python menggunakan MySQL Connector:
import mysql.connector
# Terhubung ke pangkalan data
cnx = mysql.connector.connect(user='your_username', password='your_password',
host='127.0.0.1', database='your_database')
cursor = cnx.cursor()
# Eksekusi query dengan NOT
query = "SELECT * FROM students WHERE NOT grade = 'F'"
cursor.execute(query)
#ambil dan cetak hasil
for (id, name, grade) in cursor:
print(f"Student {id}: {name} - Grade: {grade}")
# Tutup koneksi
cursor.close()
cnx.close()
Skrip ini terhubung ke pangkalan data MySQL, menjalankan query untuk menemukan semua pelajar yang tidak mendapat nilai F, dan mencetak informasi mereka. Itu seperti hari penilaian, tapi hanya untuk pelajar yang lulus!
Dan itu adalah, teman-teman! Anda baru saja mengambil perjalanan singkat melalui operator NOT di MySQL. Ingat, dalam dunia pangkalan data, kadang-kadang hal yang sama pentingnya adalah apa yang Anda inginkan dan apa yang Anda tidak inginkan. Operator NOT adalah teman setia Anda dalam situasi seperti itu.
Terus latihan, tetap curiga, dan sebelum Anda tahu, Anda akan NOTing melalui pangkalan data seperti seorang pro! Selamat berkueri!
Credits: Image by storyset