Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Membina Pertanyaan Laravel Fasih dengan Berbilang Klausa WHERE?

Bagaimanakah Saya Boleh Membina Pertanyaan Laravel Fasih dengan Berbilang Klausa WHERE?

Susan Sarandon
Lepaskan: 2024-12-20 00:37:10
asal
453 orang telah melayarinya

How Can I Efficiently Build Laravel Eloquent Queries with Multiple WHERE Clauses?

Membina Pertanyaan dengan Pelbagai Klausa WHERE Menggunakan Laravel Fasih

Pertimbangkan senario berikut: anda menggunakan Laravel's Eloquent query builder dan perlu mencipta pembina pertanyaan Laravel's Eloquent pertanyaan dengan berbilang klausa WHERE yang menyasarkan keadaan berbeza. Walaupun boleh dilakukan dengan berbilang panggilan kaedah, pendekatan ini boleh menjadi berulang dan sukar digunakan.

Untuk menangani perkara ini, Laravel menyediakan beberapa pilihan alternatif untuk membina pertanyaan sedemikian dengan lebih elegan.

Menggunakan Susunan Syarat di mana

Setakat Laravel 5.3, anda boleh menentukan berbilang syarat dalam tatasusunan yang dihantar ke kaedah where:

$query->where([
    ['column_1', '=', 'value_1'],
    ['column_2', '<>', 'value_2'],
    // ...
]);
Salin selepas log masuk

Menggunakan Tatasusunan di mana

Sebelum Laravel 5.3, anda juga boleh menggunakan tatasusunan untuk nyatakan syarat di mana:

$matchThese = ['field' => 'value', 'another_field' => 'another_value', ...];
$results = User::where($matchThese)->get();
Salin selepas log masuk

Menggunakan orWhere

Sebagai alternatif, anda boleh mengumpulkan syarat menggunakan orWhere:

$results = User::where($matchThese)
    ->orWhere($orThose)
    ->get();
Salin selepas log masuk

Resulting SQL Query

Menggunakan kaedah orWhere akan menjana pertanyaan yang serupa dengan ini:

SELECT * FROM users
WHERE (field = value AND another_field = another_value AND ...)
OR (yet_another_field = yet_another_value AND ...)
Salin selepas log masuk

Teknik ini membolehkan anda membina pertanyaan dengan berbilang klausa WHERE dengan cara yang lebih ringkas dan boleh diselenggara.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membina Pertanyaan Laravel Fasih dengan Berbilang Klausa WHERE?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan