次のコードは、私が望むとおりに実行されます。ここで、同じタスクを実行する必要がありますが、COUNTが1より大きい結果のみを表示します。COUNTは、各個別のブックID(入札)の割り当てテーブルの行数をカウントすることを目的としています。
Prompt Task 1E7;
SELECT B.bid,title,COUNT(*)
FROM ALLOCATION A
INNER JOIN BOOK B
ON A.bid = B.bid
GROUP BY B.bid,title
ORDER BY COUNT(*),bid;
WHERE COUNT(*)>1をいくつかの異なる場所に配置してみました。これは、WHERE行に対して「SQLコマンドが正しく終了していません」というエラーを返すだけです。私も以下を試しました。
Prompt Task 1E7;
SELECT B.bid,title,COUNT(*)
FROM ALLOCATION A
INNER JOIN BOOK B
ON A.bid = B.bid
GROUP BY B.bid,title
WHERE (SELECT COUNT(*)
FROM ALLOCATION A
INNER JOIN BOOK B
ON A.bid = B.bid
GROUP BY B.bid,title) > 1
ORDER BY COUNT(*),bid;
そして他の数の小さな調整。