oracle数据库,表中有字段:日期dqt_date,期初数量dqt_c,期末数量dqt_e。要求查出每月最开始一天的期初数量,每月最后一天的期末数量
(表中日期字段数据:
一月:2015-01-30,2015-01-31,
二月 ~ 六月日期每天都有,
七月:2015-07-01 ~ 2015-07-13)
结果举例(注意1月的期初数量是30号和7月的期末数量是13号)
(
2015-01-30 期初数量 2015-01-31 期末数量
2015-02-01 期初数量 2015-02-31 期末数量
2015-03-01 期初数量 2015-03-31 期末数量
2015-04-01 期初数量 2015-04-31 期末数量
2015-05-01 期初数量 2015-05-31 期末数量
2015-06-01 期初数量 2015-06-31 期末数量
2015-07-01 期初数量 2015-07-13 期末数量
)
(表中日期字段数据:
一月:2015-01-30,2015-01-31,
二月 ~ 六月日期每天都有,
七月:2015-07-01 ~ 2015-07-13)
结果举例(注意1月的期初数量是30号和7月的期末数量是13号)
(
2015-01-30 期初数量 2015-01-31 期末数量
2015-02-01 期初数量 2015-02-31 期末数量
2015-03-01 期初数量 2015-03-31 期末数量
2015-04-01 期初数量 2015-04-31 期末数量
2015-05-01 期初数量 2015-05-31 期末数量
2015-06-01 期初数量 2015-06-31 期末数量
2015-07-01 期初数量 2015-07-13 期末数量
)
解决方案 »
- Linux下安装Oracle 11g出现了一个问题,请帮忙看看
- 联网状态登录oracle客户端连接超时
- oracle存储过程求救高手
- 怎么固定连接一个实例
- 查询时的格式,影响了结果
- inner join和left join有什么区别和联系,什么情况下用inner join 和left join? select ... case...when...then...when...then...是什么意思?
- oracle跟SQL他们的优缺点到底在哪里?
- 游标速度都很慢吗
- ■询问一【select】语句的书写???
- D6中用ado连接oracle数据库,不在机器上安装oracle的客户端,通过拷贝打包所需文件的方式发布
- oracle数据库在官网下载只下载了file1文件 导致数据库没有scott用户
- oracle学习
SELECT TO_CHAR(DQT_DATE, 'yyyymm') DQT_MONTH,
MAX(DECODE(DQT_DATE, MINDATE, DQT_C, NULL)) DQT_C,
MAX(DECODE(DQT_DATE, MAXDATE, DQT_E, NULL)) DQT_E
FROM (SELECT DQT_DATE,
DQT_C,
DQT_E,
MIN(DQT_DATE) OVER(PARTITION BY TRUNC(DQT_DATE, 'mm')) MINDATE,
MAX(DQT_DATE) OVER(PARTITION BY TRUNC(DQT_DATE, 'mm')) MAXDATE
FROM TB)
GROUP BY TO_CHAR(DQT_DATE, 'yyyymm')