問題問「中顯示其職位的所有員工的名字是一樣的,在銷售部的人」,但選擇多行與一個子查詢
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)瞭解更多信息。 –