Re: [SQL ] Oracle connect by 語法,數量累乘

看板Database作者 (small kuo)時間8年前 (2015/07/29 21:30), 編輯推噓0(002)
留言2則, 1人參與, 最新討論串3/5 (看更多)
※ 引述《bohei (run and fall)》之銘言: : 大家好 : 目前正在做一個BOM的展開 : 使用的是connecy by prior 語法 目前唯獨QPA無法算出 : 想用累乘的概念把用量算出來 下面是簡單的例子 : 主料號 子料號 用量 : ==================== : A B 2 : B C 3 : SELECT 子料號,用量 FROM table : WHERE connect_by_isleaf=1 : START WITH 主料號 = 'A' : CONNECT BY PRIOR 子料號 = 主料號 : 希望最後出來的結果是 : 子料號 用量 : ============ : C 6 : 不知道有沒有辦法做到? 先謝謝大家! 試看看以下SQL是否符合需求 CREATE TABLE A ( C1 VARCHAR2(10), C2 VARCHAR2(10), C3 NUMBER ); INSERT INTO A (C1, C2, C3) VALUES ('A', 'B', 2); INSERT INTO A (C1, C2, C3) VALUES ('B', 'C', 3); COMMIT; SELECT C2,PROD FROM ( SELECT C1 , C2 , C3 , LEVEL N , COUNT(*) OVER() RN , EXP(SUM(LN(C3))OVER(ORDER BY LEVEL)) PROD FROM A START WITH C1 = 'A' CONNECT BY PRIOR C2 = C1 ) WHERE N=RN; -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.255.232.194 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1438176620.A.BE5.html

07/30 09:32, , 1F
你好,抱歉之前忘記說到可能不只有一個分支,例如A下有BC,
07/30 09:32, 1F

07/30 09:32, , 2F
C下有DE 這樣~
07/30 09:32, 2F
文章代碼(AID): #1LkDLilb (Database)
討論串 (同標題文章)
文章代碼(AID): #1LkDLilb (Database)