MySQL LIKE Join Query
Artikel ini menangani cabaran melaksanakan pertanyaan gabungan MySQL menggunakan operator LIKE. Pertanyaan yang dikemukakan dalam soalan, yang cuba memadankan lajur daripada dua jadual berdasarkan persamaan rentetan separa, tidak berfungsi seperti yang diharapkan.
Penyelesaian
Untuk menyelesaikan isu ini , pertanyaan hendaklah diubah suai seperti berikut:
SELECT * FROM Table1 INNER JOIN Table2 ON Table1.col LIKE CONCAT('%', Table2.col, '%')
Penggabungan MySQL
Perbezaan utama terletak pada pengendali penggabungan yang digunakan. MySQL mengendalikan penggabungan rentetan secara berbeza daripada beberapa pangkalan data lain. Dalam kes ini, fungsi CONCAT() digunakan untuk menggabungkan aksara kad bebas '%' dengan lajur Table2.col. Ini membolehkan pengendali LIKE melakukan padanan corak dengan padanan separa.
Alternatif
Dalam pangkalan data lain, || operator boleh digunakan untuk penggabungan. Walau bagaimanapun, pengendali ini tidak disokong dalam MySQL kerana ia digunakan untuk operasi OR logik.
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Pertanyaan Sertai MySQL dengan Operator LIKE?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!