2013-10-08 34 views
2

如何在同一個sql語句中使用別名的值進行顯示?在同一個sql語句中使用別名的值

例如:

select now() as t, concat('Hello: ', username, t) from table; 

什麼實際上,我試圖做的是一個複雜得多。我已經把它分解成這個,所以你明白了。

怎麼能這樣做,所以我不需要再次選擇相同的列?

回答

3

你不能做到這一點直接,但有在MySQL的方式來使用變量是這樣的:

select @t:=now() as t, concat('Hello: ', username, @t) from t; 

如果您不需要這個t - 你可能想要刪除該別名(我以防萬一)

+0

哦,恩!你問,你學習。感謝你,讓事情變得如此簡單。 – jmenezes

2

您不能在相同級別的查詢的選擇部分中直接重用別名。

你可以使用

可變

select @myVar := now(), concat('Hello:', username, @myVar) from t; 

子查詢

select concat('Hello:', username, t) 
from (select now() as t, username from table1) s