結合してデータをフィルタリングするテーブルが2つあります。これを行うためにストアドプロシージャを使用しました。私の意図は、最初のテーブル(つまり、従業員)に一致するレコードがない場合でも、2番目のテーブル(つまり、部門)からすべてのアイテムを取得し、最終的にカウントを表示することです。これが私が使用したコードのセグメントです:
select d.deptName,
case when COUNT(*) is null then '0' else count(*) end AS total
from Employee e
right outer join Department d on e.deptID=d.deptID
WHERE e.Year=@year
and e.Month=@month
group by d.deptName
order by d.deptName
しかし、それは私が望んでいたものを表示しておらず、本当の問題を理解することができませんでした。