單條SQL語句實現複雜邏輯的幾個例子(4)續~
接上~~
並不困難,只要對我們的sql稍加改動即可
JSSWEB> select ad1,nav from(
2 select c.*,row_number() over(partition by ad1 order by ad2) rn from (
3 select a.adddate ad1,
4 a.addvalue av1,
5 b.adddate ad2,
6 b.addvalue av2,
7 case
8 when a.addvalue != 0 then
9 a.addvalue
10 when a.addvalue = 0 and b.adddate > a.adddate then
11 b.addvalue
12 when a.addvalue = 0 and b.adddate is null then
13 first_value(b.addvalue) over(order by b.adddate desc nulls last)
14 else
15 0
16 end nav
17 from tmp4 a, tmp4 b
18 where b.addvalue(+) != 0
19 and b.adddate(+)>a.adddate
20 order by 1
21 ) c where nav!=0)where rn=1
22 ;
AD1 NAV
-------------------- ----------
2007-03-01 3.64
2007-03-02 3.64
2007-03-05 3.64
2007-03-06 3.82
2007-03-07 3.47
2007-03-08 3.47
2007-03-09 4.01
2007-03-12 4.01
2007-03-13 4.01
2007-03-14 4.21
2007-03-15 4.12
2007-03-16 4.12
2007-03-17 4.12
怎麼樣,親自動手試試吧~~
==================================
檢視前三例:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7607759/viewspace-243690/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 單條SQL語句實現複雜邏輯的幾個例子(4)SQL
- 單條SQL語句實現複雜邏輯的幾個例子(1)SQL
- 單條SQL語句實現複雜邏輯的幾個例子(2)SQL
- 單條SQL語句實現複雜邏輯的幾個例子(3)SQL
- 單條SQL語句實現複雜邏輯的幾個例子(5)SQL
- 單條SQL語句實現複雜邏輯幾例~~SQL
- 簡單的幾條Insert語句引起的邏輯Standby應用延遲的診斷
- 詳解SQL中Groupings Sets 語句的功能和底層實現邏輯SQL
- 複雜控制語句
- 實現四則運算的一條sql語句SQL
- SQL Select語句邏輯執行順序SQL
- 一條簡單SQL語句的構成及語句解析SQL
- SQL語句的4個階段SQL
- 使用vue解決複雜邏輯Vue
- 重構遺留程式碼(3):複雜的條件語句
- 一個複雜的json例子JSON
- SVG 實現複雜線條動畫SVG動畫
- Oracle sql with 語句語法與例子OracleSQL
- 如何將SQL寫成複雜邏輯 和構造資料SQL
- 複雜查詢語句的使用
- 幾個定位、查詢session的sql語句SessionSQL
- 命令列寫複雜語句命令列
- 低程式碼平臺想要實現複雜的業務流程,這4個條件不能少!
- PLSQL Language Referenc-4PL/SQL控制語句-條件選擇語句-IF THENSQL
- 常見邏輯語句逆向分析
- Oracle AWR中常用到的幾個SQL語句OracleSQL
- RxJava 系列番外篇:一個 RxJava 解決複雜業務邏輯的案例RxJava
- 單個SQL語句的10046 traceSQL
- 一條SQL語句的書寫SQL
- 一條很 巧妙的 SQL 語句SQL
- 一條sql語句的優化SQL優化
- 一條SQL語句的旅行之路SQL
- sql語句實現表的行列倒置SQL
- 狀態機解決複雜邏輯及使用
- 如何應對報表開發中的複雜邏輯
- PL/SQL 條件控制語句SQL
- WPF使用Shape實現複雜線條動畫動畫
- PLSQL Language Referenc-PL/SQL控制語句-條件選擇語句-簡單CASESQL