复杂SQL查询
1、sql server取分组后的每组的第一条数据
select * from
(
select F_Id,F_EnCode,F_FullName,F_LotNum,ROW_NUMBER() OVER(PARTITION BY F_EnCode,F_FullName ORDER By F_CreatorTime Desc) AS Row_Sort,F_CreatorTime
from Mst_Test
) A where A.Row_Sort=1
PARTITION BY 后面接分组凭借字段(通过什么来分组)
ORDER By 后面接排序字段 (根据什么排序)
ROW_NUMBER() 每条数据的行号 OVER 行号根据什么得到
原文链接:https://blog.csdn.net/yc147258/article/details/103504262
2、group by分组后,拼接同一分组的某个字段
select TRIP_ID ,ROUTE_ID ,STOP_ID,GROUP_CONCAT(STOP_SEQUENCE ORDER BY STOP_SEQUENCE ASC SEPARATOR '/') STOP_SEQUENCE from TRIP_DETAIL
GROUP BY STOP_ID ,TRIP_ID ,ROUTE_ID
group_concat :返回带有来自一个组的连接的非NULL值的字符串结果。组内字符串连接。