oracle sql 查询:按照月份对数据进行合并处理,具体看下图,sql 能否实现?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle sql 查询:按照月份对数据进行合并处理,具体看下图,sql 能否实现?相关的知识,希望对你有一定的参考价值。

WITH TEST_TBL AS
 (SELECT 'A' ITEM_CODE, TO_DATE('2014/1/1', 'yyyy/mm/dd') D_DATE,10 QUANTITY 
    FROM DUAL
  UNION ALL
  SELECT 'A' ITEM_CODE, TO_DATE('2014/2/1', 'yyyy/mm/dd') D_DATE,20 QUANTITY 
    FROM DUAL
  UNION ALL
  SELECT 'A' ITEM_CODE, TO_DATE('2014/3/1', 'yyyy/mm/dd') D_DATE,30 QUANTITY 
    FROM DUAL
  UNION ALL
  SELECT 'A' ITEM_CODE, TO_DATE('2014/4/1', 'yyyy/mm/dd') D_DATE,40 QUANTITY 
    FROM DUAL
  UNION ALL
  SELECT 'A' ITEM_CODE, TO_DATE('2014/1/1', 'yyyy/mm/dd') D_DATE,10 QUANTITY 
    FROM DUAL
  UNION ALL
  SELECT 'B' ITEM_CODE, TO_DATE('2014/2/1', 'yyyy/mm/dd') D_DATE,10 QUANTITY 
    FROM DUAL
  UNION ALL
  SELECT 'B' ITEM_CODE, TO_DATE('2014/3/1', 'yyyy/mm/dd') D_DATE,10 QUANTITY 
    FROM DUAL
  UNION ALL
  SELECT 'B' ITEM_CODE, TO_DATE('2014/4/1', 'yyyy/mm/dd') D_DATE,10 QUANTITY 
    FROM DUAL
  )
 SELECT ITEM_CODE,
 SUM( DECODE (TO_CHAR(D_DATE,'YYYY/MM') ,'2014/01', QUANTITY,0)) AS T1  ,
 SUM( DECODE (TO_CHAR(D_DATE,'YYYY/MM') ,'2014/02', QUANTITY,0)) AS T2  ,
 SUM( DECODE (TO_CHAR(D_DATE,'YYYY/MM') ,'2014/03', QUANTITY,0)) AS T3  ,
 SUM( DECODE (TO_CHAR(D_DATE,'YYYY/MM') ,'2014/04', QUANTITY,0)) AS T4  
 FROM TEST_TBL
 GROUP BY ITEM_CODE
 ORDER BY ITEM_CODE

参考技术A select 物料编码,sum(case to_char(日期,'mm') = '1' then 数量 else 0 end) 一月份数量,
    sum(case to_char(日期,'mm') = '2' then 数量 else 0 end) 二月份数量,
sum(case to_char(日期,'mm') = '3' then 数量 else 0 end) 三月份数量,
sum(case to_char(日期,'mm') = '4' then 数量 else 0 end) 四月份数量,
....
from tabname
group by 物料编码

本回答被提问者采纳

oracle里怎么对sql查询的日志进行查看

参考技术A

oracle里对sql查询的日志进行查看步骤如下:

1、Oracle日志的路径的查看。

2、Oracle日志文件包含哪些内容:日志的数量可能略有不同。

3、Oracle日志的查看方法语句代码。

4、LogMiner的使用方法理解。

5、查看LogMiner工具分析结果数据 。

6、分析结果在GV$LOGMNR_CONTENTS 视图中。

以上是关于oracle sql 查询:按照月份对数据进行合并处理,具体看下图,sql 能否实现?的主要内容,如果未能解决你的问题,请参考以下文章

Oracle大量数据查询优化

Oracle sql developer 日期/月份数据提取查询和语法

ORACLE将连续或不连续月份合并sql怎么写,要求不通过存储过程实现

oracle 查询按照中文排序

如何按 Oracle SQL IN() 子句中的值顺序对结果数据进行排序

SQL中按日期进行查询,如何截取日期进行查询