2012-02-11 8 views
0

私は宿題を割り当てています。これには、最もユニークな本がライブラリで借りられている1人以上の出版社を出力する必要があります。申し訳ありませんが理解しにくい場合。書籍の数で最高の出版社を見つけて選択する

SELECT Book.Publisher, COUNT(DISTINCT Book.Title) 
FROM Book, LibraryInventory 
WHERE LibraryInventory.BorrowedBy IS NOT NULL 
GROUP BY Book.Publisher 

それはすべての出版社を示しており、多くのユニークな本が借りているか、しかし割り当ては、最高の発行者(複数可)が必要です。

は、私は次のクエリを試してみました。

これはどのように達成できますか?

答えて

1

これは宿題なので、私はあなたにヒントを与えることができます。 a。 「最高の出版社」が何を意味するのかを調べる。あなたは借りた書籍の数を表示するクエリで終わる必要があります。番号42. b。どの出版社が42冊の書籍を借りているか調べる。 c。今、2つを組み合わせてみてください。

+0

これはうまくいくようです。擬似コード: SELECTパブリッシャー (パブリッシャー|カウント)AS結果1、 (件数)AS結果2 HAVING Result1.count = MAX(Result2.count)。 しかし、すでにResult1にその番号があるので、Result2を使用せずに取得する方法はありませんか? –

+0

@EdgarasPavlišinas:派生テーブル、ウィンドウ関数、CTEを調べることができます。 –

+0

@EdgarasPavlišinas:tip2:ネストされたクエリ – denispyr

関連する問題