我在PostgreSQL上有两个表格,分别是:雇员和雇主。 每个表中都有数据。显示在PostgreSQL上查询JOINING值缺失的所有结果
Columns in employees: employee_id, employee_name, employer_id.
Columns in employers: employer_id, employer_name.
我想显示没有缔合employer_name所有employee_name的。
我用下面的查询:
SELECT DISTINCT a.employee_name, b.employer_name
FROM employees a
NATURAL JOIN employers b
WHERE a.employee_name LIKE 'Jack';
NB! 我也尝试添加在下面我查询: COALESCE(b.employer_name, '') = ''
问题: 如果在包含关联EMPLOYEE_ID值雇主表中没有记录,查询的所有返回任何内容。我假设这是因为两张桌子没有什么可以加入的......但我想至少找到所有没有雇主的员工。我希望我的结果中的employer_name值能够返回:blank /''/ NULL。
非常感谢您的协助。
使用OUTER/RIGHT加入。如果连接表中没有任何记录,您将在外部/右边表上获得一个空值的连接结果 – Sharky