|
这个想法很有创意,反过来计算,不错不错。
但是还有一根问题,如果我想知道做一个A,分别用B,C,D,E,Z多少个,还是一个SQL语句,能不能实现?
原帖由 newkid 于 2008-7-13 02:58 发表 ![]()
PROD_AGG 见:
http://www.itpub.net/thread-1020772-1-1.html
不用 PROD_AGG的办法:
SELECT CHILD
,(SELECT POWER(10,SUM(LOG(10,C_QTY)))/POWER(10,SUM(LOG(10,P_QTY)))
FROM BOM
CONNECT BY PRIOR PARENT=CHILD
START WITH CHILD = inner.CHILD -- 从每个叶子开始
) AS C_QTY
FROM (SELECT BOM.*
,CONNECT_BY_ISLEAF AS IS_LEAF
FROM BOM
CONNECT BY PRIOR CHILD = PARENT
START WITH PARENT='A'
) inner
WHERE IS_LEAF=1; -- 这个条件找出所有的叶子 |
|