Perbandingan string mysql di mana klausa

Dalam pelajaran ini kita membahas jenis kondisi yang dapat Anda masukkan ke dalam klausa WHERE dari kueri SQL SELECT apa pun. Ada beberapa kombinasi berdasarkan operator pembanding dan tipe data kolom dalam operasi

Berikut contoh tabelnya. Misalkan Anda bekerja di perkebunan yang menanam apel. Basis data berisi satu tabel bernama apple dengan semua riwayat produksi. Tabel tersebut memiliki skema berikut

TahunVariasi ApelJumlah Pohon dalam ProduksiTon DiproduksiHari PanenHarga per TonPertama musim panas badai 2020 Merah Lezat 200010206/23/202054. 5007/03/20202020Magic Green7003306/12/202062. 6007/03/20202019Merah Lezat18008707/15/201952. 2507/12/20192019Magic Green5002606/28/201959. 4007/12/20192018Merah Lezat18009207/02/201856. 7506/03/20182017Merah Lezat150076. 507/18/201751. 4507/30/20172016Merah Lezat15007206/26/201647. 6006/23/2016

Perbandingan Sederhana dalam SQL

SQL_ memiliki beberapa operator pembanding. Yang paling sederhana adalah operator equal. Anda dapat membandingkan kolom tipe data apa pun menggunakan operator yang sama. Sebagai contoh


SELECT apple_variety, tons_produced
FROM   apples
WHERE  year = 2019

Setelah menjalankan SQL database mengembalikan catatan di mana kolom


SELECT apple_variety, number_of_tress_in_production, tons_produced
FROM   apples
WHERE  year >= 2017 AND year <=2019
0 adalah 2019

apple_varietytons_producedRed Delicious87Magic Green26

Jika equal_ adalah operator pembanding yang paling banyak digunakan, SQL menawarkan banyak operator pembanding menarik lainnya, termasuk

Misalnya jika Anda ingin mendapatkan rekaman dalam rentang antara 2017 dan 2019, Anda dapat menggunakan kueri berikut


SELECT apple_variety, number_of_tress_in_production, tons_produced
FROM   apples
WHERE  year >= 2017 AND year <=2019
_

Setelah mengeksekusi SQL, database mengembalikan kumpulan hasil data ini

apple_varietynumber_of_tress_in_productiontons_producedRed Delicious180087Magic Green50026Red Delicious180092Red Delicious150076. 5

Perbandingan rentang dapat diterapkan ke tipe data lain seperti string teks atau kolom tanggal. Misalnya, untuk mendapatkan tahun-tahun dimana panen dimulai sebelum badai musim panas yang pertama


SELECT year, 
       apple_variety,
       number_of_tress_in_production, 
       tons_produced
FROM   apples
WHERE  harvest_day < first_summer_storm

Hasilnya adalah

yearapple_varietynumber_of_tress_in_productiontons_produced2020Red Delicious20001022020Magic Green700332019Magic Green500262017Red Delicious150076. 5

Anda juga dapat menggunakan operator ketidaksetaraan dengan kolom jenis data numerik, tanggal, atau string teks untuk mengecualikan beberapa catatan. Dalam contoh ini, Anda memperoleh semua riwayat produksi, tidak termasuk varietas apel Red Delicious


SELECT year, apple_variety, number_of_trees_in_production,   
       tons_produced, harvest_day, price_per_ton
FROM   apples
WHERE  apple_variety <> ‘Red Delicious’
yearapple_varietynumber_of_trees_in_productiontons_producedharvest_dayprice_per_ton2020Magic Green7003306/12/202062. 602019Magic Green5002606/28/201959. 40

SQL WHERE dengan Operasi Aritmatika dan Transformasi

SQL_ memungkinkan perhitungan aritmatika dalam kondisi


SELECT apple_variety, number_of_tress_in_production, tons_produced
FROM   apples
WHERE  year >= 2017 AND year <=2019
4. Jenis kondisi ini meningkatkan kekuatan ekspresif SQL. Misalnya, Anda ingin mendapatkan tahun-tahun di mana produksi lebih dari 50 kilogram apel per pohon. Anda dapat melakukan operasi aritmatika untuk menghitung kilogram apel yang diproduksi per pohon


SELECT year, apple_variety, number_of_trees_in_production,   
       tons_produced, 
       (tons_produced * 1000 ) / number_of_trees_in_production AS kilograms_per_tree
FROM   apples
WHERE  (tons_produced * 1000 ) / number_of_trees_in_production > 50
_

Hasil

yearapple_varietynumber_of_trees_in_productiontons_producedkilograms_per_tree2020Red Delicious2000102512020Magic Green7003347. 142019Merah Lezat18008748. 332019Magic Green50026522018Merah Lezat18009251. 112017Merah Lezat150076. 5512016Merah Lezat15007248

Anda dapat membuat kondisi dengan operasi aritmatika dan kondisi yang melibatkan transformasi ke nilai kolom menggunakan operator string teks, operator tanggal, atau operator numerik. Misalnya, Anda ingin mengekstrak komponen bulan dari kolom


SELECT apple_variety, number_of_tress_in_production, tons_produced
FROM   apples
WHERE  year >= 2017 AND year <=2019
6 untuk mendapatkan tahun panen yang dimulai pada bulan Juni. Fungsi

SELECT apple_variety, number_of_tress_in_production, tons_produced
FROM   apples
WHERE  year >= 2017 AND year <=2019
7 yang digunakan dalam kueri ini adalah dialek SQL khusus dialek (PostgreSQL)


SELECT year, apple_variety, harvest_day
FROM   apples
WHERE  EXTRACT (month FROM harvest_day) = 6 
_

Alih-alih melakukan perhitungan aritmatika, Anda melakukan transformasi. Dengan kata lain, Anda mengubah tanggal menjadi bulan. Selanjutnya, Anda membandingkannya dengan bulan Juni (di mana 6 adalah representasi numerik untuk bulan Juni). Hasil kueri

yearapple_varietyharvest_day2020Merah Lezat06/23/20202020Magic Green06/12/20202019Magic Green06/28/20192016Merah Lezat06/26/2016

Kata Penutup

Dalam Pelajaran ini, kita membahas beberapa operator perbandingan yang dapat Anda gunakan dalam klausa


SELECT apple_variety, number_of_tress_in_production, tons_produced
FROM   apples
WHERE  year >= 2017 AND year <=2019
4. Kami juga menjelaskan cara membuat kondisi

SELECT apple_variety, number_of_tress_in_production, tons_produced
FROM   apples
WHERE  year >= 2017 AND year <=2019
_4 menggunakan operasi aritmatika atau transformasi nilai

Dalam pelajaran selanjutnya dari tutorial ini, kita membahas operator logika seperti


SELECT year, 
       apple_variety,
       number_of_tress_in_production, 
       tons_produced
FROM   apples
WHERE  harvest_day < first_summer_storm
0,

SELECT year, 
       apple_variety,
       number_of_tress_in_production, 
       tons_produced
FROM   apples
WHERE  harvest_day < first_summer_storm
1 dan

SELECT year, 
       apple_variety,
       number_of_tress_in_production, 
       tons_produced
FROM   apples
WHERE  harvest_day < first_summer_storm
2 yang dapat Anda gunakan untuk membuat klausa WHERE yang lebih kompleks. Lanjutkan, Pelajari SQL dan tingkatkan keterampilan Anda

Bagaimana cara membandingkan dua string dalam kueri MySQL?

STRCMP() di MySQL digunakan untuk membandingkan dua string. Jika kedua string sama maka mengembalikan 0, jika argumen pertama lebih kecil dari yang kedua menurut urutan yang ditentukan, ia mengembalikan -1 dan mengembalikan 1 ketika yang kedua lebih kecil dari yang pertama.

Bisakah === digunakan untuk perbandingan string?

Ya, === dapat membandingkan dua string , hasilnya benar atau salah.

Bisakah Anda menggunakan operator == dengan string?

“==” operator mengembalikan Boolean True jika dua string sama dan mengembalikan Boolean False jika dua string tidak sama. “. = ” operator mengembalikan Boolean True jika dua string tidak sama dan mengembalikan Boolean False jika dua string sama.

Bagaimana cara membandingkan dua string dalam kueri SQL?

Fungsi STRCMP() membandingkan dua string.