0
所以我有兩個表名爲Emp和部門..子查詢在SQL中返回多於1行?
- 的Emp已經爲ssn,姓名,supssn,工資,depno
- 部門有DNO,名稱,mgrssn
我應該得到那些比他的一些員工少的經理人的名字
現在我有:
SELECT DISTINCT Emp.name
FROM Emp CROSS JOIN Dept
WHERE ((SELECT Emp.salary
FROM Emp, Dept)>(SELECT Emp.salary
FROM Emp, Dept
WHERE(Emp.name IN (SELECT Emp.name
FROM Emp CROSS JOIN Dept
WHERE ssn = mgrssn)))) AND (SELECT Emp.depno
FROM Emp, Dept)=(SELECT Emp.depno
FROM Emp, Dept
WHERE(Emp.name IN (SELECT Emp.name
FROM Emp CROSS JOIN Dept
WHERE ssn = mgrssn)));
我究竟錯過了什麼或者現在增加了多少?
我只是不明白你的問題。 – Madhawas
用戶想要獲得那些經理人員的名字,而且他們的收入低於他/她的員工。 –
沒有數據結構和關係,沒有人可以假設表是如何相互關聯的。我沒有足夠的關於mysql的知識,但是你可以通過在sql server中使用Top 1和在我的sql中使用LIMIT 1來避免你的錯誤。 – 2014-03-12 06:01:45