簡體   English   中英

使用SQL查詢按日期分組?

[英]Group by on date with SQL query?

我有一個觀點

ID   S.No  DateFr        DateTo
---  ----- ------       ---------
1    63    01/01/2010    01/01/2010
1    63    01/01/2010    01/11/2010
2    64    01/01/2010    01/01/2010 
2    64    01/01/2010    01/11/2010
3    65    01/01/2010    01/01/2010
3    65    01/01/2010    01/11/2010

現在我想要類似的結果

ID   S.No  DateFr       DateTo
1     63   01/01/2010   01/11/2010
2     64   01/01/2010   01/11/2010
3     65   01/01/2010   01/11/2010

注意記錄中僅更改了DateFr,因此我希望它從成為行更改為列。 ID不是固定的,范圍可以是無限制的,例如1,1,1 ------ 30,30,30。 我正在將DB2與ISeries一起使用。

它應該像這樣簡單:

select id, s.no, min(datefr), max(dateto) from your_table group by id, s.no
SELECT ID,S.No,dateFr,DateTo  FROM your_table GROUP BY ID,S.No,dateFr,DateTo 

使用Max()Case WhenGroup By

在我看來,該技術稱為“樞軸”或“交叉表”。

您可能要使用SQL Server PIVOT命令。

看一下這個

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM