3,494
社区成员




select material_code, level ,wast
from bom
start with parent_id = 1
connect by nocycle prior child_id = parent_id;
SQL> desc bom
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
MATERIAL_CODE VARCHAR2(20)
CHILD_ID VARCHAR2(20)
PARENT_ID VARCHAR2(20)
WAST NUMBER
SQL> select * from bom;
MATERIAL_CODE CHILD_ID PARENT_ID WAST
-------------------- -------------------- -------------------- ----------
FG FG 1 .01
M1 M1 FG .02
M2 M2 FG .015
M2-1 M2-1 M2 .01
M2-1.1 M2-1.1 M2-1 .03
SQL> SELECT material_code,
2 dbms_aw.eval_number(ltrim(sys_connect_by_path(wast, '*'), '*')) wast
3 FROM bom
4 START WITH parent_id = '1'
5 CONNECT BY nocycle PRIOR child_id = parent_id;
MATERIAL_CODE WAST
-------------------- ----------
FG .01
M1 .0002
M2 .00015
M2-1 .0000015
M2-1.1 .000000045
SQL>