Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Przekaż tablicę do procedury przechowywanej w MySQL

Możesz przekazać ciąg z listą i użyć przygotowane zestawienia do uruchomienia zapytania, np. -

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 ;

Jak używać:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy mysqli_real_escape_string wystarczy, aby uniknąć wstrzyknięcia SQL lub innych ataków SQL?

  2. Jaka jest różnica między MyISAM a InnoDB?

  3. Jak dodać funkcję levenshtein w mysql?

  4. TOP 5 składni usuwania MySQL z poradami dla programistów T-SQL

  5. Elementy sum MySql w kolumnie