MySQL语句显示值即使为NULL

时间:2015-03-20 23:17:15

标签: mysql sql

我有两张桌子EMPLOYEE& DEPENDENT。员工PKSSN,依赖表的外键为ESSN。我正在尝试检索所有员工的姓名及其受抚养人的姓名。如果员工没有依赖,我只需要在依赖列中显示空白值。

要检索具有受抚养人的员工的姓名,这是我使用的陈述:

SELECT 
      firstName AS "First Name", 
      lastName AS "Last Name",
      dependent_name AS "Dependent Name" 
FROM employee,dependent 
WHERE ssn=essn;

如果有人可以指导我朝着正确的方向前进,那将非常感激。

1 个答案:

答案 0 :(得分:2)

使用left join获取第一个表中的所有行,即使第二个表中没有匹配项:

SELECT 
  firstName AS "First Name", 
  lastName AS "Last Name", 
  dependent_name AS "Dependent Name" 
FROM employee
LEFT JOIN dependent ON dependent.essn = employee.ssn;

我也将隐式旧式连接更改为符合ANSI标准的显式连接。