我有一個表格員工和一個表格銷售處於一對多關係。員工將包含名稱,電子郵件,身份證等字段,銷售將包括諸如國家,銷售數量,員工ID等信息。查找相關表格中是否存在
我現在想要做的是找到是否爲每個員工如果條目在銷售表中存在特定國家/地區。
我的輸出應該是這個樣子
Employee.name,Employee.email,銷往加拿大
在「銷往加拿大」我只是希望把在1或0,這取決於如果每個員工都有銷售條目,滿足特定國家的條件。
我已經嘗試過了是這樣的:
SELECT emp.name
,emp.email
,(SELECT COUNT(1) FROM sales sa JOIN employee emp ON emp.ID = sales.employeeID
WHERE sales.country = 'Canada') as "Sold to Canada"
FROM employee emp
這導致填充了一些比1高得多的「銷往加拿大」,因爲我認爲它返回,都使得員工總數銷售到加拿大而不是每個特定員工的信息。
哇,這個解決方案是快速的!與使用'Case When'相比,這樣執行的速度要快100倍 如果我想查看多個國家/地區,我可以通過添加更多連接來擴展它嗎?我試了一下,它似乎工作得很好,但我想確保這是正確的方法。 – Haris
@哈里斯,看到更新的答案 – Alex