เราจำเป็นต้องสร้างกระบวนงานที่เก็บไว้เพื่อแสดงวิธีการส่งผ่านอาร์เรย์ไปยังรูทีนที่เก็บไว้ของ MySQL ให้เราสร้างตารางสำหรับตัวอย่างของเราก่อน
การสร้างตาราง
mysql> สร้างตาราง FindDemo -> ( -> ชื่อ varchar(100) -> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.46 วินาที)
การแทรกเรคคอร์ดบางส่วนลงในตาราง
mysql> แทรกลงในค่า FindDemo ('John'), ('Smith'); แบบสอบถามตกลง ได้รับผลกระทบ 2 แถว (0.13 วินาที) บันทึก:2 รายการซ้ำ:0 คำเตือน:0
เพื่อแสดงรายการทั้งหมด
mysql> เลือก *จาก FindDemo;
ต่อไปนี้เป็นผลลัพธ์
<ก่อนหน้า>+-------+| ชื่อ |+-------+| จอห์น || Smith |+-------+2 แถวในชุด (0.00 วินาที)เพื่อสร้างรูทีนที่เก็บไว้ซึ่งรับอาร์เรย์เป็นพารามิเตอร์
mysql> ตัวคั่น //mysql>CREATE PROCEDURE SearchingStoredProcedure(IN ArrayDemo VARCHAR(100)) -> BEGIN -> SELECT * FROM FindDemo -> WHERE FIND_IN_SET(ชื่อ ArrayDemo); -> -> END//Query OK, 0 แถวได้รับผลกระทบ (0.14 วินาที)
ส่งผ่านอาร์เรย์เป็นพารามิเตอร์
mysql> ตัวคั่น;mysql> เรียก SearchingStoredProcedure('David,Bob,John');
นี่คือผลลัพธ์
<ก่อนหน้า>+------+| ชื่อ |+------+| John |+------+1 แถวในชุด (0.00 วินาที) ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.01 วินาที)