SQL 按问题分组 SQL Server 2005 CE
Posted
技术标签:
【中文标题】SQL 按问题分组 SQL Server 2005 CE【英文标题】:SQL Group By question SQL Server 2005 CE 【发布时间】:2010-10-10 08:05:08 【问题描述】:我在使用 sql server 2005 ce 的移动应用程序中使用的 sql 查询有问题。我对t-sql不太擅长,所以这个查询有问题
SELECT TP.ID_TASK_MASTER, TP.ID_PROBLEM, TP.ID_TASK_PROBLE, P.DS_PROBLEM,
TP.SW_HASOK, TP.SW_HASNOK, TP.SW_HASTOK, TP.SW_HASVALUE,
TP.NO_VALUE1, TP.NO_VALUE2
FROM TASK_PROBLEMS TP
INNER JOIN PROBLEMS P
ON TP.ID_PROBLEM = P.ID_PROBLEM
GROUP BY P.DS_PROBLEM,TP.ID_TASK_MASTER, TP.ID_PROBLEM, TP.ID_TASK_PROBLE
HAVING TP.ID_TASK_MASTER = @P_IDTASKMASTER
我尝试做的是在 ds_problem 字段上进行分组,得到这样的错误:
"在聚合和分组表达式中,SELECT 子句只能包含聚合和分组表达式。[Select 子句 = TP,SW_HASOK]"
那么我做错了什么?谢谢..
【问题讨论】:
【参考方案1】:我想你的意思是
SELECT TP.ID_TASK_MASTER, TP.ID_PROBLEM, TP.ID_TASK_PROBLE, P.DS_PROBLEM,
TP.SW_HASOK, TP.SW_HASNOK, TP.SW_HASTOK, TP.SW_HASVALUE,
TP.NO_VALUE1, TP.NO_VALUE2
FROM TASK_PROBLEMS TP
INNER JOIN PROBLEMS P
ON TP.ID_PROBLEM = P.ID_PROBLEM
WHERE TP.ID_TASK_MASTER = @P_IDTASKMASTER
ORDER BY P.DS_PROBLEM,TP.ID_TASK_MASTER, TP.ID_PROBLEM,TP.ID_TASK_PROBLE
【讨论】:
以上是关于SQL 按问题分组 SQL Server 2005 CE的主要内容,如果未能解决你的问题,请参考以下文章
SQL Server 2012 查询 - 按 [重复] 分组