查詢某個部門以下所有部門的用戶
問題:
如何在 mysql 中查詢特定部門及其下屬所有部門的用戶,避免重復記錄?參考表結構:
- 用戶表(user)
- 部門表(dept)
- 用戶部門關聯表(user_dept)
下述語句會產生重復記錄:
select ud.dept_id, u.* from sys_user_dept ud left join sys_user u on ud.user_id = u.id
解答:
為了避免重復,可以在查詢中加入條件,限定特定部門:
SELECT ud.dept_id, u.* FROM sys_user_dept ud LEFT JOIN sys_user u ON ud.user_id = u.id WHERE ud.dept_id = <需要查詢的部門 ID>
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END