sql >> データベース >  >> RDS >> Mysql

配列をMySQLストアドルーチンに渡す

    リストに文字列を渡して、プリペアドステートメント クエリを実行するには、たとえば-

    DELIMITER $$
    
    CREATE PROCEDURE GetFruits(IN fruitArray VARCHAR(255))
    BEGIN
    
      SET @sql = CONCAT('SELECT * FROM Fruits WHERE Name IN (', fruitArray, ')');
      PREPARE stmt FROM @sql;
      EXECUTE stmt;
      DEALLOCATE PREPARE stmt;
    
    END
    $$
    
    DELIMITER ;
    

    使用方法:

    SET @fruitArray = '\'apple\',\'banana\'';
    CALL GetFruits(@fruitArray);
    


    1. 「読み取り専用」データベースを縮小できない| AlwaysOn可用性グループの使用中にトランザクションログを縮小する

    2. SQLServerで先頭と末尾の文字を削除する方法

    3. SQLServerの監視を担当するDBAに影響を与える上位3つのトレンド

    4. 12c VARCHAR2(32767)