SELECT * FROM(
SELECT
[SPID]
,[PH1]
,[PH1_Code]
,[ProjectName]
,ROW_NUMBER() OVER(PARTITION BY [SPID] ORDER BY [SPID]) RowNum
FROM(
SELECT
a.[SPID]
,b.[ProjectName]
,b.[PH1] AS [PH1_Code]
,e.[Description] AS [PH1]
FROM [dbo].[CAE_SPAndTask] a
LEFT JOIN [dbo].[CAE_Task] b ON b.[CAENumber]= a.[CAENumber]
LEFT JOIN [dbo].[CAE_PH1PH2] e ON e.[ProductHierarchy] = b.[PH1]
)t4
GROUP BY [SPID],[ProjectName],[PH1_Code],[PH1]
)t5
WHERE RowNum = 1
相关文章
- 需要对一个字段内容进行分组(group),然后取分组中按照另一个字段排序后的第一条记录,如何写SQL语句?
- 用sql语句在表A中分组内排序,排序后取前N个,其中N由另一个表B的一个字段决定(N为不同值)
- sql server中分组查询后按排序顺序取每组第一条记录
- SQL查询结果集分组、排序(Row_Number()),取排序后的第n条
- 取出分组后每组的第一条记录(不用group by)按时间排序---转
- sql 用Group by分组后,取每组的前几条记录
- mysql分组后获取每个组排序后的第一条数据(整行)
- 在线等。分组后取每一组条的第一条数据
- SQL group by 分组后,同一组的排序后取第一条
- 如何取得group by分组后每组的第一条记录的第一个字段,取后一条记录的最后字段,并插入到新表