2015-01-30 5 views
0

아래의 쿼리를 MSSQL 2008 R2에서 실행하려고했지만 오류가 발생했습니다. 쿼리된다MSSQL CONCAT 쿼리에서 오류가 발생합니다.

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'사용. 오류없이 위 쿼리를 어떻게 실행할 수 있습니까?

+0

즉 실제 표현으로 변경 내가 MYSQL과 I에서 DATE (n_received)를 사용하고 –

답변

2

외모에 의해 actionperformed은 별칭이고 실제 테이블 필드 (또는 표현식)가 아니며 group by 절에 필요합니다.

대신 group by (n_artifactType+(' '+ n_actionPerformed))을 제안하십시오.

흥미롭게도 order by은 별칭에 만족합니다.

+0

테이블 열 이름을 포함하십시오 MSSQL에서 이에 상응하는 것이 필요합니다. – user3114967

+0

죄송합니다. 다음을 확인하지 못했습니다. –

+0

MSSQL에서 변환을 사용하여 'CONVERT (varchar, GETDATE(), 111);를 선택하면 'DateTime'을 형식화 된 날짜로 변환 할 수 있습니다. –

0

오류가 querygroup by 섹션에, 별명 작동하지 않습니다에 의해 그룹 (n_artifactType+(' '+ n_actionPerformed))