问题问“中显示其职位的所有员工的名字是一样的,在销售部的人”,但选择多行与一个子查询
SELECT name, job
FROM Employer WHERE job=(SELECT job FROM employer WHERE dept = sales);
不会因为子查询工作返回多个值。我如何解决这个问题?
问题问“中显示其职位的所有员工的名字是一样的,在销售部的人”,但选择多行与一个子查询
SELECT name, job
FROM Employer WHERE job=(SELECT job FROM employer WHERE dept = sales);
不会因为子查询工作返回多个值。我如何解决这个问题?
尝试使用in
SELECT name, job
FROM Employer
WHERE job in (SELECT job FROM employer WHERE dept = sales);
+1打我0.5秒 –
这很简单,谢谢。 – spacitron
@Parado具有最简单的解决方案。请记住,但是,in
关键字实际上只是一个join
。例如,您的查询与以下内容相同:
SELECT e1.name, e1.job
FROM Employer e1
JOIN Employer e2 on e1.job = e2.job
WHERE e2.dept = 'sales'
我删除了“家庭作业”标记,因为它不应该再使用。看到[这个问题](http://meta.stackexchange.com/questions/147100/the-homework-tag-is-now-officially-deprecated)了解更多信息。 –