2010-11-03 84 views
1

是否可以使用簡單的SELECT查詢的結果對列名進行別名。MySQL:別名列名問題

這不起作用:

SELECT `hlevel1` AS (SELECT `level1` FROM `hierarchy_labels` LIMIT 1) FROM `hierarchy`; 

有什麼建議?

回答

3

你不能這樣做。

別名用於重命名字段或命名計算字段。

如果您只是想你的結果,被命名爲「hlevel1」,你可以試試這個:

SELECT level1 as hlevel1 FROM hierarchy_labels LIMIT 1 
1

使用事先準備好的聲明。

SELECT `level1` INTO @x FROM `hierarchy_labels` LIMIT 1; 
SET @s = CONCAT('SELECT `hlevel1` AS `', @x, '` FROM `hierarchy`'); 
PREPARE s FROM @s; 
EXECUTE s; 
DEALLOCATE PREPARE s;