select
Users.emp as 'No',
Users.username as Name,
SUM(Inv_SubEMP.exchange_price) as Erad,
coalesce(SandSD.val, 0) as s7obat,
ISNULL(Isnull(SUM(Inv_SubEMP.exchange_price),0) -
IsNull(SandSD.val, 0),0) as Totol
from
(
(
(Users join Inv_SubEMP on Users.username = Inv_SubEMP.emp
and userType = 1 and IS_Deleted = 0)
left join InvEMP on InvEMP.proc_id = Inv_SubEMP.proc_id
)
left join SandSD on SandSD.emp_id = Users.emp
and SandSD.IS_Deleted = 0
)
where InvEMP.IS_Deleted = 0
group by Users.emp, Users.username, Inv_SubEMP.emp, SandSD.val
order by Users.emp
此查询收集了不同的函数,然后与另一个函数放在一起,但我基本上想知道如何重写 LEFT JOIN 部分以使其正常工作。
我正在尝试在此处添加自己的左连接,以便 .. 结果有时可以正常工作,有时不能正常工作 .. 有时我会像没有一样罚款。图 10 非常感谢
答案 0 :(得分:0)
试试这个:
select
Users.emp as 'No',
Users.username as Name,
SUM(Inv_SubEMP.exchange_price) as Erad,
SUM(coalesce(SandSD.val, 0)) as s7obat,
ISNULL(Isnull(SUM(Inv_SubEMP.exchange_price),0) -
IsNull(SandSD.val, 0),0) as Totol
from
(
(
(Users join Inv_SubEMP on Users.username = Inv_SubEMP.emp
and userType = 1 and IS_Deleted = 0)
left join InvEMP on InvEMP.proc_id = Inv_SubEMP.proc_id
)
left join SandSD on SandSD.emp_id = Users.emp
and SandSD.IS_Deleted = 0
)
where InvEMP.IS_Deleted = 0
group by Users.emp, Users.username, Inv_SubEMP.emp
order by Users.emp