IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置: 首頁(yè)數(shù)據(jù)庫(kù)Oracle → Oracle按時(shí)間分組統(tǒng)計(jì)的sql

Oracle按時(shí)間分組統(tǒng)計(jì)的sql

時(shí)間:2015-06-28 00:00:00 來(lái)源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(1)

  如下表table1:

  日期(exportDate)?? 數(shù)量(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

  注意:為了顯示更直觀,如下查詢已皆按相應(yīng)分組排序

  1.按年份分組

  select to_char(exportDate,'yyyy'),sum(amount) from table1 group by to_char(exportDate,'yyyy');

  年份????? 數(shù)量

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

  2009??? 68

  2010??? 137

  2008??? 103

  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');

  月份???? 數(shù)量

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

  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

  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');

  季度??? 數(shù)量

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

  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');

  周 數(shù)量

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

  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

  補(bǔ)充:

  按季度分組還有個(gè)比較笨的方法(參考網(wǎng)絡(luò)資源)

  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

關(guān)鍵詞標(biāo)簽:Oracle

相關(guān)閱讀

文章評(píng)論
發(fā)表評(píng)論

熱門文章 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 oracle中使用SQL語(yǔ)句修改字段類型-oracle修改SQL語(yǔ)句案例 oracle中使用SQL語(yǔ)句修改字段類型-oracle修改SQL語(yǔ)句案例 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 為UNIX服務(wù)器設(shè)置Oracle全文檢索 為UNIX服務(wù)器設(shè)置Oracle全文檢索

相關(guān)下載

    人氣排行 oracle中使用SQL語(yǔ)句修改字段類型-oracle修改SQL語(yǔ)句案例 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 ORACLE SQL 判斷字符串是否為數(shù)字的語(yǔ)句 ORACLE和SQL語(yǔ)法區(qū)別歸納(1) oracle grant 授權(quán)語(yǔ)句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法