【发布时间】:2020-03-24 11:06:39
【问题描述】:
我有一个相当大的数据库(不是我设计的),我需要从中获取一些数据。我需要找到属于一个组织的所有用户。有一个看起来像这样的用户表;
id
name
email
password
more fields
还有这样的组织表;
id
name
org_number
contact_person
more fields
还有一个 user_orgs 表,通过它与其他表相关;
id
user_id
org_id
给定一个 org_number,我希望能够获取该组织中每个用户的姓名和电子邮件地址。
我试过了
SELECT
per.name,
per.email,
org.name AS orgname,
org.org_number,
org.contact_person
FROM users AS per
LEFT JOIN user_orgs AS uorgs
ON per.id=uorgs.org_id
LEFT JOIN organization AS org
ON uorgs.org_id=org.id
WHERE org.org_number=123456;
连同一堆其他查询,我知道应该有 20 个用户注册到组织编号 123456,但它返回空。
我该怎么做?
【问题讨论】:
-
ON per.id=uorgs.org_id=> 将用户表加入到用户 id 与地图组织 id 匹配的地图?