• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    利用Oracle分析函數LAG求時間段內的本期、同比、環比值

    來源:懂視網 責編:小采 時間:2020-11-09 15:25:04
    文檔

    利用Oracle分析函數LAG求時間段內的本期、同比、環比值

    利用Oracle分析函數LAG求時間段內的本期、同比、環比值:with time_dim as (select add_months(add_months(date'2013-7-1',-12),(rownum-1)) dim_month from dual connect by level =months_between(date'2014-1-1',date'2012-7-1')+1)select t.dim_month, t.c_count, nvl(t.ly_count,0) ly_count, nvl(t.lm_count,
    推薦度:
    導讀利用Oracle分析函數LAG求時間段內的本期、同比、環比值:with time_dim as (select add_months(add_months(date'2013-7-1',-12),(rownum-1)) dim_month from dual connect by level =months_between(date'2014-1-1',date'2012-7-1')+1)select t.dim_month, t.c_count, nvl(t.ly_count,0) ly_count, nvl(t.lm_count,

    with time_dim as (select add_months(add_months(date'2013-7-1',-12),(rownum-1)) dim_month from dual connect by level =months_between(date'2014-1-1',date'2012-7-1')+1)select t.dim_month, t.c_count, nvl(t.ly_count,0) ly_count, nvl(t.lm_count,

    with time_dim as 
    (select add_months(add_months(date'2013-7-1',-12),(rownum-1)) dim_month
     from dual connect by level <=months_between(date'2014-1-1',date'2012-7-1')+1)
    select t.dim_month,
     t.c_count,
     nvl(t.ly_count,0) ly_count,
     nvl(t.lm_count,0) lm_count
     from
     (select t1.dim_month, 
     nvl(t2.c_count,0) c_count,
     lag(t2.c_count,1,0) over(order by t1.dim_month) ly_count,
     lag(t2.c_count,12,0) over(order by t1.dim_month) lm_count 
     from time_dim t1
     left join test_lzc t2
     on t1.dim_month = t2.dim_month) t
     where t.dim_month between date'2013-7-1' and date'2014-1-1'
    order by 1 desc;
    
    

    Oracle 分析函數LAG是用來求結果集中前一個值作為新的列的值得一個函數,效率很高。可以利用此分析函數來秒求環比和同比的值,但這其中也有些問題。LAG分析函數語法結構如下:

    LAG(EXPRESSION,[OFFSET],[DEFAULT]) OVER([PATITION BY COLUMN1...] ORDER BY COLUMN1...);

    其中offset是偏移量,指的是在結果集中向前第OFFSET個值。

    問題:

    1、如果基表中有的月份缺失,那么他就會把缺失的那部分月份漏查,直接再找前一個的值。

    2、如果加入了時間篩選那么最前面的值得環比值,和所有結果集中的同比值全會找不到。

    解決方案:

    初始化一個時間維度,與基表關聯,補全所有的月份,缺失的月份數值值為零。 以銷售額為例,SQL如下:

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    利用Oracle分析函數LAG求時間段內的本期、同比、環比值

    利用Oracle分析函數LAG求時間段內的本期、同比、環比值:with time_dim as (select add_months(add_months(date'2013-7-1',-12),(rownum-1)) dim_month from dual connect by level =months_between(date'2014-1-1',date'2012-7-1')+1)select t.dim_month, t.c_count, nvl(t.ly_count,0) ly_count, nvl(t.lm_count,
    推薦度:
    標簽: 利用 計算 時間段
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 欧美午夜精品一区二区三区91| 中国国产精品| 夜夜精品无码一区二区三区| 四虎国产精品免费入口| 日韩精品少妇无码受不了| 国产系列高清精品第一页| 华人在线精品免费观看| 久久棈精品久久久久久噜噜| 久久九九久精品国产| 成人午夜精品亚洲日韩 | 亚洲国产一二三精品无码| 国产亚洲精品AA片在线观看不加载| 国产精品一国产精品| 国产亚洲精品美女久久久| 亚洲色精品88色婷婷七月丁香 | 99精品视频在线观看婷| 国产成人亚洲综合无码精品| 亚洲av永久无码精品网站 | 97久久精品人人做人人爽| 久久99国产精品99久久| 第一福利永久视频精品| 国产精品福利自产拍在线观看| 无码精品黑人一区二区三区| 人妻VA精品VA欧美VA| 久久精品国产99国产精品| 国产欧美在线观看精品一区二区| 99视频在线精品国自产拍亚瑟 | 欧美精品欧美人与动人物牲交| 亚洲欧美日韩久久精品| 无码精品人妻一区| 免费精品精品国产欧美在线| 久久国产热这里只有精品| 精品国产91久久久久久久a| 国产午夜亚洲精品国产成人小说| 国产日韩久久久精品影院首页 | 精品四虎免费观看国产高清午夜| CAOPORM国产精品视频免费 | 亚洲乱码国产乱码精品精| 中文字幕精品无码一区二区| 亚洲欧美日韩国产精品专区| 久久精品国产清高在天天线|