Om strängen finns i din externa applikation (som PHP), säker, konstruera bara MySQL-satsen.
Om strängen finns inuti en MySQL-tabell kan du inte. MySQL har ingen eval() eller en sådan funktion. Följande är omöjligt:
Anta att du har en tabell queries med ett fält columnname som hänvisar till ett av kolumnnamnen i tabellen mytable . Det kan finnas ytterligare kolumner i queries som låter dig välja columnname du vill.
INSERT INTO queries (columname) VALUES ("name")
SELECT (select columnname from queries) from mytable
Du kan dock arbeta med FÖRBÄTTDA UTTALANDEN a> . Var medveten om att detta är väldigt hackigt.
SELECT columnname from queries into @colname;
SET @table = 'mytable';
SET @s = CONCAT('SELECT ',@colname,' FROM ', @table);
PREPARE stmt FROM @s;
EXECUTE stmt;