Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Menggunakan Pertanyaan SQL Pemegang Tempat untuk Menghantar Tatasusunan ke Klausa WHERE?

Bagaimanakah Saya Boleh Menggunakan Pertanyaan SQL Pemegang Tempat untuk Menghantar Tatasusunan ke Klausa WHERE?

Barbara Streisand
Lepaskan: 2024-12-18 09:52:13
asal
388 orang telah melayarinya

How Can I Use Placeholder SQL Queries to Pass Arrays to WHERE Clauses?

Menggunakan Pertanyaan SQL Pemegang Tempat untuk Menghantar Tatasusunan ke Klausa WHERE

Apabila berurusan dengan tatasusunan dalam pertanyaan SQL, terutamanya apabila menggunakan klausa WHERE, ia menjadi diperlukan untuk mencari cara untuk memasukkan nilai tatasusunan ke dalam rentetan pertanyaan. Tatasusunan ID ($galeri) yang disediakan memerlukan pertanyaan yang menggunakan nilai ini dengan cekap dalam klausa WHEREnya.

Satu penyelesaian melibatkan penggunaan pertanyaan SQL pemegang tempat. Ikuti langkah ini:

1. Tentukan Rentetan Pemegang Tempat:

$placeholder = join(',', array_fill(0, count($galleries), '?'));
Salin selepas log masuk

Ini menghasilkan rentetan dengan tanda soal yang dipisahkan dengan koma, mewakili ruang letak untuk nilai tatasusunan. Dalam contoh kami, rentetan pemegang tempat ialah "?,,?".

2. Sediakan Rentetan Pertanyaan:

$query = "SELECT * FROM galleries WHERE id IN ({$placeholder})";
Salin selepas log masuk

Rentetan pertanyaan menggunakan operator IN dan rentetan ruang letak untuk memasukkan nilai tatasusunan ke dalam klausa WHERE.

3. Ikat Nilai Tatasusunan:

Menggunakan pernyataan yang disediakan, ikat nilai tatasusunan pada ruang letak:

$stmt = $conn->prepare($query);
$stmt->bind_param(str_repeat('i', count($galleries)), ...$galleries);
Salin selepas log masuk

Ini mengikat elemen tatasusunan kepada pemegang tempat dalam pernyataan yang disediakan.

4. Laksanakan Pertanyaan:

$stmt->execute();
Salin selepas log masuk

Pernyataan yang disediakan dilaksanakan, dengan berkesan menggunakan nilai tatasusunan dalam klausa WHERE.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggunakan Pertanyaan SQL Pemegang Tempat untuk Menghantar Tatasusunan ke 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