考虑其他表的数据的SQL查询



我有两个表:

employees:

id, CMS_user_id, practice_group_id, ...

users:

id, level, ...

我想选择practice_group_id为2的所有员工,但仅当相应的用户根据users表的level为1时。我研究了一下,我有一种感觉,它最终与UNION关键字有关,但我不能完全弄清楚。

在"人类语言"中,查询应该是这样的:select all fromemployeeswherepractice_group_id= 2,然后检查雇员的CMS_user_id,在表users中检查id等于CMS_user_id的相应用户的level是否为1

JOIN将匹配两个表之间相应的行。然后,可以使用WHERE进行过滤。

例如:

select e.*
from employees e
join users u on u.id = e.CMS_user_id
where e.practice_group = 2 and u.level = 1

最新更新