如下表table1:
  日期(exportDate)               数量(amount)
  --------------                    -----------
  14-2月 -08                       20
  10-3月 -08                       2
  14-4月 -08                       6
  14-6月 -08                       75
  24-10月-09                      23
  14-11月-09                      45
  04-8月 -10                       5
  04-9月 -10                       44
  04-10月-10                      88

2.按月份分组
  select to_char(exportDate,'yyyy-mm'),sum(amount) from table1 group by to_char(exportDate,'yyyy-mm')
  order by to_char(exportDate,'yyyy-mm');
  月份           数量
  -----------------------------
  2008-02    20
  2008-03    2
  2008-04    6
  2008-06    75
  2009-10    23
  2009-11    45
  2010-08    5
  2010-09    44
  2010-10    88

-------------------------------------------------------

1.按年份分组
  select to_char(exportDate,'yyyy'),sum(amount) from table1 group by to_char(exportDate,'yyyy');
  年份      数量
  -----------------------------
  2009    68
  2010    137
  2008    103

-------------------------------------------

3.按季度分组
  select to_char(exportDate,'yyyy-Q'),sum(amount) from table1 group by to_char(exportDate,'yyyy-Q')
  order by to_char(exportDate,'yyyy-Q');
  季度          数量
  ------------------------------
  2008-1    22
  2008-2    81
  2009-4    68
  2010-3    49
  2010-4    88
  4.按周分组
  select to_char(exportDate,'yyyy-IW'),sum(amount) from table1 group by to_char(exportDate,'yyyy-IW')
  order by to_char(exportDate,'yyyy-IW');
  周             数量
  ------------------------------
  2008-07    20
  2008-11    2
  2008-16    6
  2008-24    75
  2009-43    23
  2009-46    45
  2010-31    5
  2010-35    44
  2010-40    88
  补充:
  按季度分组还有个比较笨的方法(参考网络资源)
  select  to_char(exportDate,'yyyy'),
  sum(decode(to_char(exportDate,'mm'),'01',amount,'02',amount,'03',amount,0)) as 第一季,
  sum(decode(to_char(exportDate,'mm'),'04',amount,'05',amount,'06',amount,0)) as 第二季,
  sum(decode(to_char(exportDate,'mm'),'07',amount,'08',amount,'09',amount,0)) as 第三季,
  sum(decode(to_char(exportDate,'mm'),'10',amount,'11',amount,'12',amount,0)) as 第四季
  from table1
  group by to_char(exportDate,'yyyy');
  年份        第一季     第二季     第三季     第四季
  --------------------------------------------------
  2009         0            0            0          68
  2010         0            0            49        88
  2008         22          81          0          0

来源 http://yupianer.iteye.com/blog/1520259

oracle 查询按月份分组的更多相关文章

  1. oracle查询指定月份数据

    SELECT * FROM [表名]       where  to_number(to_char([表中日期字段],'mm')) = [要查找的月份]

  2. .Net程序员学用Oracle系列(21):分组查询(GROUP BY)

    1.GROUP BY 标准分组 1.1.GROUP BY 概述 1.2.WHERE 和 HAVING 的区别? 2.GROUP BY 扩展分组 2.1.ROLLUP 分组 2.2.CUBE 分组 2. ...

  3. Oracle按不同时间分组统计

    Oracle按不同时间分组统计 Oracle按不同时间分组统计的sql 如下表table1: 日期(exportDate) 数量(amount) -------------- ----------- ...

  4. Oracle打怪升级之路一【Oracle基础、Oracle查询】

    前言 背景:2021年马上结束了,在年尾由于工作原因接触到一个政府单位比较传统型的项目,数据库用的是Oracle.需要做的事情其实很简单,首先从大约2000多张表中将表结构及数据导入一个共享库中,其次 ...

  5. 45 个非常有用的 Oracle 查询语句

    ​ 这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有 Oracle 开发者都必备的技能,所以快 ...

  6. Oracle查询表里的重复数据方法:

    一.背景 一张person表,有id和name的两个字段,id是唯一的不允许重复,id相同则认为是重复的记录. 二.解决 select id from group by id having count ...

  7. 40多个非常有用的Oracle 查询语句

    给大家介绍是40多个非常有用的Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有Oracle 开发者都必备的技能,所以快快收藏吧! 日期 ...

  8. 45个非常有用的 Oracle 查询语句小结

    45个非常有用的 Oracle 查询语句小结 这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有 ...

  9. 45 个非常有用的 Oracle 查询语句(转)

    这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有 Oracle 开发者都必备的技能,所以快快收 ...

随机推荐

  1. 记录下Lambda常用的表现形式

    纯粹记录下Lambda的表现形式: (x, y) => x * y;//多参数,隐式类型=>表达式 x => x * ;//单参数,隐式类型=>表达式 x => { ; ...

  2. brew faq:call ISHELL_GetJulianDate always return 1980 1 6

    假设你当时系统的时间为20130804000000,那么如果你将系统的时间改为20140104000000,那么ISHELL_GetJulianDate  将返回20140104000000. 但如果 ...

  3. Swift-基础语法之变量&常量&元组

    使用 let来声明一个常量,用 var来声明一个变量.常量的值在编译时并不要求已知,但是你必须为其赋值一次.这意味着你可以使用常量来给一个值命名,然后一次定义多次使用 myVariable = let ...

  4. MySQL技术内幕:SQL编程 第2章 数据类型 读书笔记

    2.1 类型属性 2.1.1 UNSIGNED 数字无符号化, INT的值 -2147483648 ~ 2147483647  INT UNSIGNED的值 0 ~ 4294967295 int a ...

  5. osgEarth2.8加载矢量数据描边效果

    通过修改osgearth自带的agglite插件,实现矢量描边效果,可以自定义描边的颜色和宽度(单位像素) 测试文件osgearth_features.cpp #include <osg/Not ...

  6. React如何进行事件传参

    今天在学习React的es6语法的时候,发现了个有趣的现象,就是this的指向问题.es6的this不同于es5,它在创立函数伊始便已经存在了,而不是像es5一样,睡调用的函数,this指向谁.但是这 ...

  7. zookeeper-端口说明

    一.zookeeper有三个端口(可以修改) 1.2181 2.3888 3.2888 二.3个端口的作用 1.2181:对cline端提供服务 2.3888:选举leader使用 3.2888:集群 ...

  8. PHP MySQL Insert Into

    INSERT INTO 语句用于向数据库表中插入新记录. 向数据库表插入数据 INSERT INTO 语句用于向数据库表添加新记录. 语法 INSERT INTO table_name VALUES ...

  9. this、target、currentTarget

    this:绑定事件所触发行为的对象 target:最开始冒泡的的对象 currentTarget:事件触发行为的对象 this == target currentTarget和this 是target ...

  10. ubuntu 信使(iptux) 创建桌面快捷方式

    $ sudo ln -s /usr/bin/iptux ~/桌面/iptux.ln