Terkadang Anda mungkin perlu membandingkan dua kolom dari tabel yang sama atau tabel yang berbeda, di MySQL. MySQL memungkinkan Anda membandingkan dua kolom dengan mudah menggunakan operator serta kueri bersarang. Pada artikel ini, kita akan melihat bagaimana membandingkan dua kolom di MySQL.
Cara Membandingkan Dua Kolom di MySQL
Kami akan melihat kasus penggunaan yang berbeda untuk membandingkan dua kolom di MySQL
Bandingkan dua kolom dari tabel yang sama
Katakanlah Anda memiliki tabel berikut penjualan(id, harga_biaya, harga_jual) dan Anda ingin membandingkan harga_biaya dan harga_jual kolom.
mysql> create table sales(id int, cost_price int, selling_price int); mysql> insert into sales(id, cost_price, selling_price) values(1, 135, 215), (2,215, 145), (3,310,100); mysql> select * from sales; +------+------------+---------------+ | id | cost_price | selling_price | +------+------------+---------------+ | 1 | 135 | 215 | | 2 | 215 | 145 | | 3 | 310 | 100 | +------+------------+---------------+
Berikut kueri SQL umum untuk dua kolom perbandingan (kolom1, kolom2) dalam sebuah tabel (tabel1).
mysql> select * from table1 where column1 not in (select column2 from table1);
Dalam kueri di atas, perbarui tabel1, kolom1 dan kolom2 sesuai kebutuhan Anda.
Bonus Baca :Cara Mendapatkan Setiap Nth Row di MySQL
Kami akan menerapkan kueri ini untuk membandingkan dua kolom harga_biaya dan harga_jual , dan tampilkan catatan di mana ada ketidakcocokan antara dua kolom.
mysql> select * from sales where cost_price not in (select selling_price from sales); +------+------------+---------------+ | id | cost_price | selling_price | +------+------------+---------------+ | 1 | 135 | 215 | | 3 | 310 | 100 | +------+------------+---------------+
Anda juga dapat menggunakan operator matematika (<,>, <>) jika Anda ingin membandingkan dua kolom numerik. Berikut ini contoh untuk menampilkan baris di mana cost_price>selling_price.
mysql> select * from sales where cost_price>selling_price; +------+------------+---------------+ | id | cost_price | selling_price | +------+------------+---------------+ | 2 | 215 | 145 | | 3 | 310 | 100 | +------+------------+---------------+
Bonus Baca :Cara Menambahkan Kolom Auto Increment Di MySQL
Bandingkan dua kolom dari tabel yang berbeda
Katakanlah Anda juga memiliki tabel lain pesanan(id, harga_biaya, harga_jual)
mysql> create table orders(id int, cost_price int, selling_price int); mysql> insert into orders(id, cost_price, selling_price) values(1, 235, 215), (2,205, 105), (3,320,120); mysql> select * from orders; +------+------------+---------------+ | id | cost_price | selling_price | +------+------------+---------------+ | 1 | 235 | 215 | | 2 | 205 | 105 | | 3 | 320 | 120 | +------+------------+---------------+
Bonus Baca :5 Alat Desain Basis Data Gratis Teratas
Berikut query SQL di atas yang dimodifikasi untuk membandingkan dua kolom dari tabel yang berbeda table1 dan table2
mysql> select * from table1 where column1 not in (select column2 from table2);
Kami akan menerapkan kueri di atas untuk membandingkan harga_biaya kolom dari penjualan tabel dengan harga_jual dengan pesanan tabel.
mysql> select * from sales where cost_price not in (select selling_price from orders); +------+------------+---------------+ | id | cost_price | selling_price | +------+------------+---------------+ | 1 | 135 | 215 | | 3 | 310 | 100 | +------+------------+---------------+
Ubiq memudahkan untuk memvisualisasikan data, dan memantaunya di dasbor waktu nyata. Coba Ubiq gratis.