Mysql
 sql >> Base de données >  >> RDS >> Mysql

sélection dynamique du nom de colonne dans MySql

Ce que vous pouvez faire est d'utiliser une instruction préparée dans votre procédure stockée qui vous permettra d'exécuter une requête de chaîne :

Comme exemple simple :

DELIMITER //
CREATE PROCEDURE selname (IN col VARCHAR(20))
BEGIN
  SET @sql = CONCAT('SELECT ', col, ' FROM tbl');
  PREPARE stmt FROM @sql;
  EXECUTE stmt;
  DEALLOCATE PREPARE stmt;
END//
DELIMITER ;

Testez-le avec cette Démo SQLFiddle