Du vil måske se svaret på dette spørgsmål , hvilket jeg tror er, hvad du prøver at opnå. Kort sagt foreslår svaret at bruge forberedte udsagn for at simulere en eval()-agtig funktionalitet. I dit tilfælde kan dette virke (du kan se SQLFiddle her :
SELECT transaction_type FROM orders WHERE id=1 into @colname;
SET @table = 'items';
SET @query = CONCAT('SELECT ',@colname,' FROM ', @table);
PREPARE stmt FROM @query;
EXECUTE stmt;
Jeg vil ikke hævde at være nogen form for ekspert i den underliggende mekanik på arbejde, men ifølge kommentarerne ser det ud til at nå målet. Igen, dette blev overtaget fra et andet svar, så hvis det virker, så sørg for at give +1 til det :)