我有一個數據庫下表(我只列出重要的屬性):這個數據庫查詢有什麼問題?
Person(ssn,countryofbirth)
Parents(ssn,fatherbirthcountry)
Employment(ssn, companyID)
Company(companyID, name)
我的任務是這樣的:給定fatherbirthcountry作爲輸入,輸出的公司裏工作的人,其countryofbirth匹配的名字分娩國家投入。
我假裝fatherbirthcountry是墨西哥和做到這一點:
SELECT name
FROM Company
WHERE companyid = (SELECT companyid
FROM Employment
WHERE ssn = (SELECT ssn
FROM Person
WHERE countryofbirth = 'Mexico');
,但它給我一個錯誤:
>Scalar subquery is only allowed to return a single row.
我是完全偏離了軌道?任何人都可以幫忙嗎?
當我輸入我的回答,我得到了「6分新的答案已經發布了消息裝入新。答案?」 (在2分鐘內)... – Amsakanna 2010-03-12 05:21:43
是的,這是德比 – VeePee 2010-03-12 06:21:56
無論你走的是什麼方法,你可能會想'SELECT DISTINCT name ...'。 – pilcrow 2010-03-12 17:23:14