如何选择MySQL中局部变量中的列?

时间:2010-02-19 10:56:53

标签: sql mysql

我有一个包含列名的变量。 我想像这样选择一个选择

select `@x` from table;

有可能吗?

2 个答案:

答案 0 :(得分:1)

您可以按如下方式使用prepared statement

SET @x = 'some_field';

SET @s = CONCAT('SELECT ', @x, ' FROM table;');

PREPARE stmt FROM @s;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;

答案 1 :(得分:1)

这应该有效:

SET @y = CONCAT('SELECT ', @x, ' FROM table;');
PREPARE stmt1 FROM @y;
EXECUTE stmt1;