2012-02-07 61 views
0

新手但可以通过“as”语句进行串联吗?“As”中的级联语句

Ex。

Set @nthpct:=75; 
select 
-code- as concat(@nthpct,' percent') 
from widget; 
+0

你试过了吗? – xdazz 2012-02-07 14:30:13

+2

'as'引入了一个别名。这是没有道理的。你究竟想要做什么? – cHao 2012-02-07 14:30:17

回答

0

当然,但AS追赶功能,而不是之前。

Set @nthpct:=75; 
select concat(@nthpct,' percent') as code 
from widget; 
+0

但是,在那一点上,你从'widget'中选择了什么?我的印象是'code-'是一些复杂的表达式,在'as'之后不适合。 – cHao 2012-02-07 14:33:04

+0

这也是我的印象。这是关于创建动态列别名 – 2012-02-07 14:38:05

2

你试图做的事情不被MySQL支持。

列别名需要是文字字符串。您不能在列别名中使用变量。

0

我不相信你可以做你正在尝试的动态列名称。然而,你应该可以通过使用DynamicSQL来完成,你可以在其中构建要执行的字符串,从而可以根据需要使用列名构建字符串。然后,准备好命令并执行它。