LIKE vs. = dalam MySQL
Apabila menulis pertanyaan MySQL, anda mungkin menghadapi dua operator untuk nilai yang sepadan: = (sama dengan) dan SUKA (suka). Walaupun ia kelihatan serupa, ia mempunyai kegunaan dan tingkah laku yang berbeza.
= (Sama Dengan)
Pengendali = melakukan padanan tepat. Ia menyemak sama ada nilai dalam lajur ungkapan sepadan dengan nilai yang dinyatakan dalam corak. Contohnya:
SELECT foo FROM bar WHERE foobar = '$foo';
Jika lajur foobar mempunyai nilai '$foo', baris akan dipilih. Jika tidak, ia akan dikecualikan.
SUKA (Suka)
Sebaliknya, pengendali LIKE melakukan pemadanan kad bebas. Ia menggunakan simbol % untuk mewakili berbilang aksara dan _ untuk mewakili satu aksara. Secara lalai, digunakan sebagai aksara melarikan diri.
SELECT foo FROM bar WHERE foobar LIKE '%$foo%';
Pertanyaan ini akan sepadan dengan mana-mana baris di mana lajur foobar mengandungi nilai $foo dalam sebarang kedudukan. % kad bebas membenarkan aksara tambahan sebelum atau selepas $foo.
Perbezaan Utama
Contoh
Pertimbangkan jadual berikut:
| id | foobar | |-----|--------| | 1 | foo | | 2 | foobar | | 3 | fooextra|
Ringkasnya, gunakan = untuk padanan tepat dan LIKE untuk padanan kad bebas dalam pertanyaan MySQL. Memahami pengendali ini adalah penting untuk mendapatkan semula data dengan tepat dan cekap.
Atas ialah kandungan terperinci Berikut ialah beberapa pilihan tajuk, dengan mengambil kira keperluan untuk format soalan dan kaitan dengan kandungan: * Bila Perlu Digunakan = vs. SUKA dalam Pertanyaan MySQL: Perbandingan * MySQL: = untuk Padanan Tepat atau LIKE. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!