<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答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
        主站蜘蛛池模板: 亚洲一区二区高清| 国产亚洲精aa成人网站| 亚洲人成电影在线观看网| 久久久精品免费视频| 西西人体44rt高清亚洲| 成人网站免费观看| 亚洲国产成人久久精品app| 一本岛高清v不卡免费一三区| 亚洲综合在线成人一区| 日韩版码免费福利视频| 亚洲影院天堂中文av色| 国产成人aaa在线视频免费观看| 黄页视频在线观看免费| 最新国产AV无码专区亚洲 | 免费影院未满十八勿进网站| 亚洲午夜精品一区二区公牛电影院 | 久久久久高潮毛片免费全部播放| 久久久久亚洲AV无码麻豆| 99在线精品视频观看免费| 中文字幕亚洲码在线| 亚洲成av人片不卡无码久久| 国产在线精品观看免费观看| 亚洲天堂中文字幕| 日本特黄特色aa大片免费| 午夜成人无码福利免费视频| 国产精品亚洲成在人线| 三年片在线观看免费大全 | 亚洲美女视频一区二区三区| 免费无码肉片在线观看| 日韩毛片在线免费观看| 久久精品视频亚洲| 国产精品成人无码免费| 在线观看免费无码视频| 亚洲一区中文字幕| 亚洲午夜国产片在线观看| 久久国产色AV免费观看| 免费无码国产在线观国内自拍中文字幕 | 国产福利电影一区二区三区,免费久久久久久久精 | 亚洲人成小说网站色| 亚洲麻豆精品国偷自产在线91| 免费人成在线观看网站品爱网|