我需要从表中选择2列,其中来自另一个表或单元格的匹配数据为空,
table 1 named "emp" contain emp_name ,emp_id
table 2 named "salary" contain emp_sal, emp_id
我需要创建选择查询 拥有所有emp_name,emp_id和emp_sal(仅限员工将进行销售)或为Null
立即感谢您的帮助((((update))))
首先感谢您的帮助
SELECT emp.emp_id,emp.emp_name,salary.emp_sal FROM emp LEFT JOIN salary ON emp.emp_id = salary.emp_id;
它有效,但有很多重复,我需要在白天进行此查询...
我创建另一个名为“day”的表我需要查询出现在此表中输入的日期
此表只有一列我记录((当天用户输入并保存在“day.user_day”中))
我需要链接这三个表 一起
让我们很容易将薪水改为出勤......
我需要查询日期中的所有姓名和身份证明,并告诉所有员工你有没有时间
就像我只在2014年4月8日搜索
name id time
john 1 04/08/2014 06:00
man 2 null
scsv 3 04/08/2014 07:00
答案 0 :(得分:0)
您需要LEFT JOIN
:
SELECT * FROM emp LEFT JOIN salary ON emp.emp_id = salary.emp_id;
这将返回所有员工及其emp_sal
,如果不在NULL
表中,则会salary
。
答案 1 :(得分:0)
如果我读到的内容是正确的,那么您希望获得员工姓名和薪水,无论员工是否在salary
中有条目,都要返回所有员工。如果这是正确的,这应该有效:
SELECT
e.emp_name,
e.emp_id,
s.emp_sal
FROM
emp AS e
LEFT JOIN salary AS s ON e.emp_id = s.emp_id
但是,如果您只希望员工在salary
表中添加条目,请将LEFT JOIN
更改为INNER JOIN
。