Membuat Prosedur Tersimpan dengan Parameter "WHERE" Pilihan
Dalam pertanyaan data, selalunya perlu menapis hasil berdasarkan pelbagai parameter, sesetengah daripadanya mungkin pilihan. Satu pendekatan untuk mengendalikan senario ini adalah melalui prosedur tersimpan. Artikel ini menerangkan cara membuat prosedur tersimpan dinamik yang membolehkan pengguna menentukan parameter "WHERE" pilihan.
Cabaran yang dikemukakan oleh parameter "WHERE" pilihan terletak pada membina pertanyaan yang mengendalikan kedua-dua parameter tunggal dan berbilang juga sebagai nilai nol. Untuk menangani perkara ini, satu kaedah yang berkesan melibatkan penggunaan struktur kod berikut:
SELECT * FROM table WHERE ((@status_id is null) or (status_id = @status_id)) and ((@date is null) or ([date] = @date)) and ((@other_parameter is null) or (other_parameter = @other_parameter))
Dalam pertanyaan ini, setiap keadaan parameter dinilai secara bebas. Jika parameter adalah batal, syaratnya ditinggalkan, membenarkan pertanyaan mengembalikan hasil yang sepadan dengan mana-mana gabungan parameter yang ditentukan.
Pendekatan ini mempunyai beberapa kelebihan:
Atas ialah kandungan terperinci Bagaimana untuk Mencipta Prosedur Tersimpan dengan Parameter Klausa WHERE Pilihan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!