34,576
社区成员
发帖
与我相关
我的任务
分享
SELECT
a.*,
[money] = COALESCE(a.[money], b.[money], a.[money]),
d.公式,
是否利用公式=(CASE WHEN COALESCE(a.[money], b.[money]) IS NULL THEN 1 ELSE 0 END)
FROM tableA a
LEFT JOIN tableB b
ON a.id = b.id
LEFT JOIN tableC c
ON a.id = c.id
LEFT JOIN tableD d
ON a.id = d.id
[/quote]
恩,用这个函数解决了SELECT
a.*,
[money] = COALESCE(a.[money], b.[money], a.[money]),
d.公式,
是否利用公式=(CASE WHEN COALESCE(a.[money], b.[money]) IS NULL THEN 1 ELSE 0 END)
FROM tableA a
LEFT JOIN tableB b
ON a.id = b.id
LEFT JOIN tableC c
ON a.id = c.id
LEFT JOIN tableD d
ON a.id = d.id
SELECT a.*, [money] = COALESCE(a.[money], b.[money], 0) --COALESCE函数中可以加任意多的参数,它返回第一个不为NULL的参数值
FROM tableA a
LEFT JOIN tableB b
ON a.id = b.id
LEFT JOIN tableC c
ON a.id = c.id
SELECT a.id,SUM(ISNULL(b.money,c.money)) money
FROM a
LEFT JOIN b ON a.id=b.id
LEFT JOIN c ON a.id=c.id
GROUP BY a.id
select A.ID,B.amt as B金额,C.amt as C金额
from A
left join (select Aid ,SUM(amt) as amt from B group by Aid) B on A.id=B.Aid
left join (select Aid ,SUM(amt) as amt from C group by Aid) C on A.id=C.Aid
SELECT a.id,SUM(ISNULL(b.money,c.money) money
FROM a
LEFT JOIN b ON a.id=b.id
LEFT JOIN c ON a.id=c.id
GROUP BY a.id