2
練習のテストは: 少なくとも10のエディションの会議を考慮すると、各エディションの会議では、エディションの名前とそのエディションで最も多くの記事を投稿した作者のコードが表示されます。 私のテーブルは以下のとおりです。各グループの最大数
Author(CodAuthor, Name, Surname);
Article(CodArticle, Title);
Authors_Article(CodAuthor, CodArticle);
Conference_Editions(Conference, Edition, EditionName);
Author_presents_Article(CodAuthor, Date, Room, CodArticle, Conference, Edition);
私は次のコードを書いた:
SELECT Apa.CodAuthor, Ec.EdizionName
FROM Conference_Editions Ec JOIN Author_presents_Article Apa ON (Ec.Edition = Apa.Edition) AND (Ec.Conference = Apa.Conference)
WHERE (Apa.Conference In (SELECT Conference
FROM Conference_Editions
GROUP BY Conference
HAVING COUNT(Edition)>10))
GROUP BY Apa.Conference, Apa.Edition, Apa.CodAuthor, Ec.EdizionName;
をしかし、私は、各エディションのために、ほとんどの記事を発表した著者を見つける方法がわかりません。
は、ほとんどの記事のために、あなたは' –
私は、あなたの提案を理解することはできません最大(数(版)) 'と' having'を使用することができます(版)) '、それは私に次のエラーをもたらします:グループ機能がネストされています。 –
ArtCountAtconfEdとして 'select ...、count(*)over(Part by CODAuthor、CodArticle、Conference、Edition)のような分析関数は、各カンファレンスエディションの著者による記事の数を与えるでしょう。それからあなたは会議/編集版で最大限になることができます。 – xQbert