我有2个表,表actions
和表Users
。 actions
-> Users
是many-one
关联。
表actions
(具有数千行)
- id
- uuid
- 名称
- 类型
- created_by
- org_id
表Users
(最多一百行)
- id
- 用户名
- org_id
- org_name
我正在尝试获得最佳联接查询,以使用WHERE
子句获得计数。我需要表created_by
中不同的actions
的数量,表org_name
中的Users
包含“ myorg”。另外,(actions.created_by
= Users.username
)
我目前有以下查询(产生预期结果),不知道哪个更好,是否可以进一步优化?
查询1:
select count(distinct actions.created_by)
from actions join
Users
on Users.org_id = actions.org_id
where Users.org_name like '%myorg%';
查询2:
select count(distinct Users.username)
from Users join
actions
on actions.created_by = Users.username
where Users.org_name like '%myorg%';