select a.account, a.telephone, a.rent, b.fee01, fee02, fee03, fee04 from
userlist a,
(select telephone, sum(fee01) fee01, sum(fee02) fee02, sum(fee03) fee03, sum(fee04) fee04
from CHARGE group by telephone) b
where a.telephone = b.telephone(+)
userlist a,
(select telephone, sum(fee01) fee01, sum(fee02) fee02, sum(fee03) fee03, sum(fee04) fee04
from CHARGE group by telephone) b
where a.telephone = b.telephone(+)
, a.account
, sum(a.rent) over(partition by a.account)
, sum(b.fee01) over(partition by a.account)
, sum(b.fee02) over(partition by a.account)
, sum(b.fee03) over(partition by a.account)
, sum(b.fee04) over(partition by a.account)
from userlist a
, charge b
where a.telephone = b.telephone(+)
FROM (
SELECT u.account, u.rent, c.fee01, c.fee02, c.fee03, c.fee04
FROM userlist u LEFT OUTER JOIN charge c
ON(u.telephone=c.telephone)
)
nvl(sum(fee02),0),nvl(sum(fee03),0),nvl(sum(fee04),0)
from userlist a,charge b
where a.telephone=b.telephone(+)
group by account
/这样才完整。