Mysql jika string sama

Tutorial MySQL ini mengeksplorasi semua operator pembanding yang digunakan untuk menguji kesetaraan dan ketidaksetaraan, serta operator yang lebih maju

Keterangan

Operator perbandingan digunakan dalam klausa WHERE untuk menentukan rekaman mana yang akan dipilih. Berikut adalah daftar operator perbandingan yang dapat Anda gunakan di MySQL

Comparison OperatorDescription=Equal<=>Equal (Safe to compare NULL values)<>Not Equal!=Not Equal>Greater Than>=Greater Than or EqualMari kita tinjau operator perbandingan yang dapat Anda gunakan di MySQL

Contoh - Operator Kesetaraan

Di MySQL, Anda dapat menggunakan operator = untuk menguji kesetaraan dalam kueri. Operator =_ hanya dapat menguji kesetaraan dengan nilai yang bukan NULL

Sebagai contoh

SELECT *
FROM contacts
WHERE last_name = 'Johnson';

Dalam contoh ini, pernyataan SELECT di atas akan mengembalikan semua baris dari tabel kontak di mana last_name sama dengan Johnson

Contoh - Operator Kesetaraan (Aman dengan Nilai NULL)

Karena operator = hanya membandingkan nilai non-NULL, tidak aman untuk digunakan dengan nilai NULL. Untuk mengatasi batasan ini, MySQL menambahkan operator

SELECT *
FROM contacts
WHERE website1 = website2;
_2 untuk memungkinkan Anda menguji kesetaraan dengan nilai NULL dan non-NULL

Untuk lebih menjelaskan perbedaan antara operator = dan operator

SELECT *
FROM contacts
WHERE website1 = website2;
2, kami akan menyertakan beberapa contoh dengan kueri dan data

Dengan asumsi kita memiliki tabel bernama kontak di MySQL yang diisi dengan data berikut

contact_idlast_namewebsite1website21Johnsontechonthenet.com2Anderson3SmithTBDTDB4Jacksoncheckyourmath.comdigminecraft.com

Kita dapat menggunakan operator =_ dalam kueri berikut

SELECT *
FROM contacts
WHERE website1 = website2;
_

Karena kami menggunakan operator =_, kami akan mendapatkan hasil sebagai berikut

contact_idlast_namewebsite1website23SmithTBDTDB

Dalam contoh ini, pernyataan SELECT di atas akan mengembalikan semua baris dari tabel kontak di mana situs web1 sama dengan situs web2. Itu tidak mengembalikan catatan kedua di mana website1 dan website2 sama-sama bernilai NULL

Sekarang mari kita lihat apa yang terjadi saat kita menulis ulang kueri menggunakan operator

SELECT *
FROM contacts
WHERE website1 = website2;
2 yang aman digunakan dengan nilai NULL

SELECT *
FROM contacts
WHERE website1 <=>website2;

Karena kami menggunakan operator

SELECT *
FROM contacts
WHERE website1 = website2;
_2, kami akan mendapatkan hasil sebagai berikut

contact_idlast_namewebsite1website22Anderson3SmithTBDTDB

Sekarang kueri kami mengembalikan semua baris dari tabel kontak di mana situs web1 sama dengan situs web2, termasuk catatan di mana situs web1 dan situs web2 adalah nilai NULL

Contoh - Operator Ketimpangan

Di MySQL, Anda dapat menggunakan operator

SELECT *
FROM contacts
WHERE website1 = website2;
_9 atau
SELECT *
FROM contacts
WHERE website1 <=>website2;
0 untuk menguji ketidaksetaraan dalam kueri

Misalnya, kita dapat menguji ketimpangan menggunakan operator ________1______9, sebagai berikut

SELECT *
FROM contacts
WHERE last_name <> 'Johnson';

Dalam contoh ini, pernyataan SELECT akan mengembalikan semua baris dari tabel kontak di mana last_name tidak sama dengan Johnson

Atau Anda juga dapat menulis kueri ini menggunakan operator

SELECT *
FROM contacts
WHERE website1 <=>website2;
0, sebagai berikut

SELECT *
FROM contacts
WHERE last_name != 'Johnson';

Kedua kueri ini akan mengembalikan hasil yang sama

Contoh - Lebih Besar Dari Operator

Anda dapat menggunakan operator

SELECT *
FROM contacts
WHERE website1 <=>website2;
_3 di MySQL untuk menguji ekspresi yang lebih besar dari

SELECT *
FROM contacts
WHERE contact_id > 50;

Dalam contoh ini, pernyataan SELECT akan mengembalikan semua baris dari tabel kontak di mana contact_id lebih besar dari 50. Contact_id yang sama dengan 50 tidak akan disertakan dalam kumpulan hasil

Contoh - Operator Lebih Besar Dari atau Sama

Di MySQL, Anda dapat menggunakan operator

SELECT *
FROM contacts
WHERE website1 <=>website2;
_4 untuk menguji ekspresi yang lebih besar dari atau sama dengan

SELECT *
FROM contacts
WHERE contact_id >= 50;

Dalam contoh ini, pernyataan SELECT akan mengembalikan semua baris dari tabel kontak di mana contact_id lebih besar dari atau sama dengan 50. Dalam hal ini, contact_id sama dengan 50 akan disertakan dalam kumpulan hasil

Contoh - Kurang Dari Operator

Anda dapat menggunakan operator

SELECT *
FROM contacts
WHERE website1 <=>website2;
5 di MySQL untuk menguji ekspresi kurang dari

SELECT *
FROM inventory
WHERE product_id < 300;

Dalam contoh ini, pernyataan SELECT akan mengembalikan semua baris dari tabel inventori dengan product_id kurang dari 300. Product_id sama dengan 300 tidak akan disertakan dalam set hasil

Contoh - Operator Kurang Dari atau Sama

Di MySQL, Anda dapat menggunakan operator

SELECT *
FROM contacts
WHERE website1 <=>website2;
_6 untuk menguji ekspresi yang kurang dari atau sama dengan

SELECT *
FROM inventory
WHERE product_id <= 300;

Dalam contoh ini, pernyataan SELECT akan mengembalikan semua baris dari tabel inventori di mana product_id kurang dari atau sama dengan 300. Dalam hal ini, product_id sama dengan 300 akan disertakan dalam kumpulan hasil

Contoh - Operator Tingkat Lanjut

Kami telah menulis tutorial khusus untuk membahas masing-masing operator perbandingan lanjutan. Topik ini akan dibahas nanti, atau Anda dapat melompat ke salah satu tutorial ini sekarang

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.

Bisakah kita menggunakan == di MySQL?

Tidak ada konsep tanda sama dengan ganda. Ini dapat digunakan untuk membandingkan dua nilai . Jika Anda menggunakan tanda sama dengan ganda (==) di MySQL, Anda akan mendapatkan pesan kesalahan.

Bisakah == membandingkan string?

Anda tidak boleh menggunakan == (operator persamaan) untuk membandingkan string ini karena mereka membandingkan referensi string, i. e. apakah mereka adalah objek yang sama atau tidak. Di sisi lain, metode equals() membandingkan apakah nilai string sama, dan bukan objek itu sendiri.

Bagaimana cara saya memeriksa apakah dua string serupa di SQL?

Dalam SQL, kita dapat membandingkan dua string menggunakan fungsi STRCMP () . STRCMP () mengembalikan '0' jika kedua string sama, mengembalikan '-1' jika string pertama lebih kecil dari string kedua, dan mengembalikan 1 jika string pertama lebih besar dari string kedua.