私の現在のプロジェクトでは、施設を割り当てられたユーザーグループがあります。私に必要なのは、それは、それはそれにを割り当てられた施設の説明と数部門ユーザーグループの名前だのショーです。以下に示すように、私はややこれを達成することができました:カウントに0を含めることは余分のwhere句では機能しません
はは、現在の「成功した」結果
は、私が今直面しています問題は、私はことを知らせるwhere句を追加したとき削除された施設はNOTが含まれている必要があります。以下は、上記の結果を生成する私のSQL文です:私は削除した設備が備わっていないためにwhere句を追加するとき、
SELECT ug.usergroupname UserGroupName, dpt.deptname Department, ug.usergroupdesc UserGroupDesc, count(ugf.usergroupid) NumOFFacilities
FROM tblusergroup ug
LEFT JOIN tblusergroupfacilities ugf
ON ug.usergroupid = ugf.usergroupid
LEFT JOIN tbldepartment dpt
ON dpt.deptcode = ug.deptcode
LEFT JOIN tblfacility f
ON ugf.facilityid = f.facilityid
WHERE ug.isdeleted = 0
GROUP BY ug.usergroupname, dpt.deptname, ug.usergroupdesc
しかし
上の結果を達成するために
声明は、それが他の全体を生成します結果:
編集声明
SELECT ug.usergroupname UserGroupName, dpt.deptname Department, ug.usergroupdesc UserGroupDesc, count(ugf.usergroupid) NumOFFacilities
FROM tblusergroup ug
LEFT JOIN tblusergroupfacilities ugf
ON ug.usergroupid = ugf.usergroupid
LEFT JOIN tbldepartment dpt
ON dpt.deptcode = ug.deptcode
LEFT JOIN tblfacility f
ON ugf.facilityid = f.facilityid
WHERE ug.isdeleted = 0
AND f.isdeleted = 0 //<-------added clause
GROUP BY ug.usergroupname, dpt.deptname, ug.usergroupdesc
変更された結果
削除設備を除く上記の結果を達成するために、すべてのどのような方法がありますか?どんな助けでも本当に感謝しています。
外側に条件を追加するための基本的なルールは加入:外部表の条件は - > WHERE、内部テーブル上の条件に追加 - > ONに追加: 'LEFT tblfacility Fを登録しよう ON ugf.facilityid = f.facilityid AND f.isdeleted = 0' – dnoeth
**変更された結果**は現在の出力です。それを確認して、希望の結果を追加できますか? – KtX2SkD
@dnoeth私はこれを試みたが、それは私に最初の出力を与える。 –