MSSQL CONCAT查询抛出错误

时间:2015-01-30 05:57:54

标签: mysql sql-server mssql-jdbc

我试图在MSSQL 2008 R2中执行以下查询,但是它的抛出错误。 查询是:

    SELECT (n_artifactType+(' '+ n_actionPerformed)) AS actionperformed, 
    COUNT(n_actionPerformed) total FROM notifications WHERE   n_project='JupiterQA'
    GROUP BY actionperformed order by n_actionPerformed;

错误是:

Msg 207, Level 16, State 1, Line 1
Invalid column name 'actionperformed'.

使用' actionperformed'作为别名,即使它的抛出错误。 如何在没有错误的情况下执行上述查询。

2 个答案:

答案 0 :(得分:2)

通过它的外观actionperformed是别名,而不是group by子句所需的实际表字段(或表达式)。

建议group by (n_artifactType+(' '+ n_actionPerformed))

有趣的是,order by会对别名感到满意。

答案 1 :(得分:0)

错误位于group by的{​​{1}}部分,group by将无法使用alias将其更改为实际表达式,即{。{1}}