Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menggunakan Operator LIKE dengan betul dengan `orWhere` Laravel 5 Eloquent?

Bagaimana untuk Menggunakan Operator LIKE dengan betul dengan `orWhere` Laravel 5 Eloquent?

Barbara Streisand
Barbara Streisandasal
2024-11-28 00:56:11887semak imbas

How to Correctly Use the LIKE Operator with Laravel 5 Eloquent's `orWhere`?

Laravel-5 LIKE Equivalent (Fasih) Perbandingan Pertanyaan

Soalan ini meneroka penggunaan operator LIKE dalam pertanyaan pangkalan data dengan Laravel-5 Fasih berkata-kata. Kod yang disediakan:

BookingDates::where('email', Input::get('email'))
->orWhere('name', 'like', Input::get('name'))->get()

bertujuan untuk mendapatkan semula hasil yang sepadan sama ada e-mel yang ditentukan atau yang mengandungi rentetan tertentu dalam medan nama. Walau bagaimanapun, keadaan orWhereLike tidak menghasilkan sebarang hasil.

Niatnya adalah untuk mencipta pertanyaan yang setara dengan:

select * from booking_dates where email='[email protected]' or name like '%John%'

Penyelesaian

Kepada menyelesaikan isu ini, adalah disyorkan untuk menggunakan '%...'% dan bukannya '...' dalam klausa SUKA. Ini memastikan bahawa sebarang rentetan tertentu boleh ditemui dalam medan yang dikehendaki. Sebagai alternatif, anda boleh menggunakan ->whereLike dan bukannya ->orWhereLike untuk sintaks yang lebih bersih:

BookingDates::where('email', Input::get('email'))
    ->orWhere('name', 'like', '%' . Input::get('name') . '%')
    ->get();

Pengelogan Pangkalan Data

Jika anda menghadapi sebarang masalah dengan menjana pertanyaan SQL, anda boleh menggunakan fungsi dd(DB::getQueryLog()) untuk memeriksa melaksanakan pertanyaan dan mengenal pasti sebarang kemungkinan ralat. Ini boleh membantu anda menyelesaikan masalah dan memastikan pertanyaan anda berfungsi seperti yang diharapkan.

Atas ialah kandungan terperinci Bagaimana untuk Menggunakan Operator LIKE dengan betul dengan `orWhere` Laravel 5 Eloquent?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn