Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

cách sử dụng WHERE IN thủ tục lưu trữ mysql

Bạn có thể sử dụng cách nối chuỗi và câu lệnh PREPARE để chạy các truy vấn được tạo động.

somestring phải được tạo ở định dạng SQL hợp lệ như '1','2','3'

DELIMITER $$
DROP PROCEDURE IF EXISTS `abc`.`table1`$$
CREATE PROCEDURE  `abc`.`test`
(IN somestring VARCHAR(255))
BEGIN
    @s=CONCAT("
    SELECT * FROM abc.table1 
    WHERE flight_type IN (",somestring,");")
    PREPARE stmt FROM @s;
    EXECUTE @s;
END $$
DELIMITER ;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ap_proxy_connect_backend vô hiệu hóa nhân viên cho (127.0.0.1)

  2. levenshtein thay thế

  3. Các khái niệm về MySQL:phiên so với kết nối

  4. Giao dịch trong MySQL - Không thể khôi phục

  5. Chèn một mảng vào cột cơ sở dữ liệu mysql