Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Meluluskan Berbilang Nilai kepada Klausa 'IN' SQL dalam JasperReports?
Meluluskan Senarai Parameter SQL "IN" dalam JasperReports
Apabila membina pertanyaan dalam JasperReports, selalunya perlu menggunakan predikat "IN" SQL untuk tapis data berdasarkan senarai nilai. Ini boleh dicapai dengan menyatakan secara dinamik nilai parameter dalam kod Java.
Pertimbangkan senario di mana pertanyaan menggunakan predikat "IN" untuk menapis pelanggan berdasarkan peranan mereka:
SELECT customer_name AS NAME, id_customer AS ID FROM customer WHERE customer_role IN ($P{roles})
The Parameter "peranan" boleh menerima berbilang nilai integer, yang akan ditentukan secara dinamik semasa penjanaan laporan. Untuk menetapkan parameter ini menggunakan kod Java, ikut langkah berikut:
JasperReports menyediakan pembolehubah khas, "$X," yang memudahkan pengendalian parameter "IN":
select * from customer where $X{IN,customer_role,roles}
Ungkapan ini akan berkesan sertakan nilai yang dinyatakan dalam parameter "peranan" dalam predikat "IN". Seperti yang diserlahkan dalam dokumentasi yang dipautkan, pendekatan ini serasi dengan JasperReports versi 3.5 dan lebih baru dan memastikan pengendalian yang betul bagi berbilang nilai parameter.
Atas ialah kandungan terperinci Bagaimana untuk Meluluskan Berbilang Nilai kepada Klausa 'IN' SQL dalam JasperReports?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!