Computer >> Máy Tính >  >> Lập trình >> MySQL

Truyền một mảng cho một truy vấn bằng mệnh đề WHERE trong MySQL?

Chúng ta có thể chuyển một mảng với sự trợ giúp của mệnh đề where IN. Đầu tiên chúng ta hãy tạo một bảng mới cho ví dụ của chúng ta.

mysql> create table PassingAnArrayDemo
   -> (
   -> id int,
   -> Firstname varchar(100)
   -> );
Query OK, 0 rows affected (1.60 sec)

Bây giờ hãy để chúng tôi chèn hồ sơ.

mysql> insert into PassingAnArrayDemo values(1,'John'),(2,'Carol'),(3,'Smith'),(4,'Bob'),(5,'Johnson'),(6,'David'),(7,'Sam'),(8,'Jessica');
Query OK, 8 rows affected (0.32 sec)
Records: 8  Duplicates: 0  Warnings: 0

Để hiển thị tất cả các bản ghi.

mysql> select *from PassingAnArrayDemo;

Sau đây là kết quả.

+------+-----------+
| id   | Firstname |
+------+-----------+
|    1 | John      |
|    2 | Carol     |
|    3 | Smith     |
|    4 | Bob       |
|    5 | Johnson   |
|    6 | David     |
|    7 | Sam       |
|    8 | Jessica   |
+------+-----------+
8 rows in set (0.00 sec)

Sau đây là cú pháp để gửi một tham số mảng với sự trợ giúp của mệnh đề where IN.

mysql> SELECT *
   -> FROM PassingAnArrayDemo where id IN(1,3,6);

Sau đây là kết quả.

+------+-----------+
| id   | Firstname |
+------+-----------+
|    1 | John      |
|    3 | Smith     |
|    6 | David     |
+------+-----------+
3 rows in set (0.04 sec)