我还在学习SQL查询。我的桌子看起来像这样:
Financial_Year_Month_Code由“年”组成,P01代表第1期。日历键只是年月日。
|---------------------------|--------------|--------------------
| Financial_Year_Month_Code | Calendar_Key | Column 3...
|---------------------------|--------------|--------------------
| 1988 P01 | 19870901 |
| ......
| 2013 P01 | 20110901 |
| 2013 P01 | 20110902 |
| 2013 P01 | 20110903 |
| 2013 P01 | ..... |
| 2013 P02 | 20111002 |
| 2013 P02 | 20111003 |
| 2013 P02 | 20111004 |
| MORE...
我想查询的结果应如下所示:
|----------------------|------------------|--------------------|-----------------|
| Financial_Code_Start | Calendar_Key_Min | Financial_Code_End |Calendar_key_max |
|----------------------|------------------|--------------------|-----------------|
| 2013 P02 | 20110901 | 2014 P01 | 20120930 |
| 2013 P03 | 20111002 | 2014 P02 | 20121029 |
| ....
原始表格中有1988年至2014年的财务年度代码清单。管理层希望我在上面生成一张表格,列出2012年至2014年的财务年度代码,以便他们查看开始日期和结束日期12个月的滚动期。太糟糕了,我们的开发人员现在都在度假,所以我需要帮助。非常感谢你。
答案 0 :(得分:0)
您可以按Financial_Year_Month_Code对查询进行分组,然后计算每个组的聚合(如MIN和MAX)。
SELECT Financial_Year_Month_Code, MIN(Calendar_Key), MAX(Calendar_Key)
FROM YOUR_TABLE
GROUP BY Financial_Year_Month_Code