sql >> Database teknologi >  >> RDS >> Mysql

hvordan man bruger WHERE IN mysql lagret procedure

Du kan bruge strengsammenkædningen og PREPARE-sætningen til at køre dynamisk byggede forespørgsler.

somestring skal være konstrueret i et gyldigt SQL-format som '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. Wildfly 8.0.0 mysql problemer med datakilde

  2. Hvis der er en måde, jeg indre kan forbinde en MS SQL-tabel til en MySql-tabel i en forespørgsel ved hjælp af MySql?

  3. Træk måned og dag fra mysql

  4. Sådan rulles patchen tilbage efter mislykket cutover-fase i R12.2