我在查詢時遇到了一些麻煩。我應該把所有的客戶端信息放在客戶端只有1次測試通過的地方。我被告知使用IN
運營商。這是我有:在子查詢中使用IN運算符與組
SELECT *
FROM Client
WHERE ClientName IN (SELECT ClientName, COUNT(TestNbr)
FROM Test
GROUP BY ClientName, TestResult
HAVING COUNT(TestNbr)=1
AND TestResult='Pass');
我得到這個錯誤:
(SELECT ClientName, COUNT(TestNbr)
*
ERROR at line 4:
ORA-00913: too many values
據我所知,這是因爲我不應該在該行除了CLIENTNAME其他任何條目。我該如何解決這個問題?
謝謝!這工作 – Cyrallia 2013-02-12 05:15:34
不客氣':D'我已經更新了答案。 – 2013-02-12 05:17:07
不確定我在這裏購買內嵌視圖,因爲您沒有使用任何字段。另外,我想我會將testresult ='Pass''從'having'放入'where'中並從'group by'中移除testresult' – 2013-02-12 05:20:13