Si la chaîne se trouve dans votre application externe (comme PHP), bien sûr, construisez simplement l'instruction MySQL.
Si la chaîne se trouve dans une table MySQL, vous ne pouvez pas. MySQL n'a pas de eval()
ou telle fonction. Ce qui suit est impossible :
Supposons que vous ayez une table queries
avec un champ columnname
qui fait référence à l'un des noms de colonne de la table mytable
. Il peut y avoir des colonnes supplémentaires dans les queries
qui vous permettent de sélectionner le columnname
vous voulez.
INSERT INTO queries (columname) VALUES ("name")
SELECT (select columnname from queries) from mytable
Vous pouvez cependant travailler avec PREPARED STATEMENTS . Soyez conscient que c'est très piraté.
SELECT columnname from queries into @colname;
SET @table = 'mytable';
SET @s = CONCAT('SELECT ',@colname,' FROM ', @table);
PREPARE stmt FROM @s;
EXECUTE stmt;