lor*_*ain 2 sql sql-server grouping
我有一个包含日期和数字列的表,如下所示:
date Number 1-1-2012 1 1-2-2012 1 1-3-2012 2 1-4-2012 1
我想创建一个SQL查询,将具有相同Number的行分组并采用最小日期.仅当值iof Number与上一行/下一行相同时,才会发生分组.所以,结果是
date Number 1-1-2012 1 1-3-2012 2 1-4-2012 1
.
Cheerz,Lordkain
试试这个:
WITH CTE AS(
SELECT * ,ROW_NUMBER() OVER (ORDER BY [DATE] ) -
ROW_NUMBER() OVER (PARTITION BY NUMBER ORDER BY [DATE] ) AS ROW_NUM
FROM TABLE1)
SELECT NUMBER,MIN(DATE) AS DATE
FROM CTE
GROUP BY ROW_NUM,NUMBER
ORDER BY DATE
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
124 次 |
| 最近记录: |