我试图执行mssql查询但显示错误。我在MySQL中执行的查询工作正常。
查询是:
SELECT tst_flow_name, tst_flow_desc,COUNT(tst_flow) tot
FROM test_flow_details
LEFT OUTER JOIN tst_flow ON tst_flow_name=tst_flow
AND test_flow_details.project=tst_flow.project
WHERE test_flow_details.project='JupiterQA'
错误是:
列' test_flow_details.tst_flow_name'在选择列表中无效,因为它不包含在聚合函数或GROUP BY子句中。
如何正确执行MSSQL查询。
答案 0 :(得分:1)
您不能将普通列选择与count()
等聚合函数调用混合使用。
按您想要唯一的列进行分组,然后添加count()
SELECT tst_flow_name, tst_flow_desc, COUNT(*) tot
FROM test_flow_details
LEFT OUTER JOIN tst_flow ON tst_flow_name=tst_flow
AND test_flow_details.project=tst_flow.project
WHERE test_flow_details.project='JupiterQA'
GROUP BY tst_flow_name, tst_flow_desc