0

従業員IDと書籍IDの列を持つemployeebookテーブルがあります(とりわけ)。

Emp_id|Book_id|.......

別の表 HistoryBooks があります。

Book_id|description|.....

従業員が持っているすべての本が必ずしも歴史の本であるとは限らないことに注意してください。

最大数の履歴書を持つ 10 人の従業員 (従業員 ID と所有する履歴書の数) を見つける必要があります。

SQL Server 2008 を使用しています。
助けていただければ幸いです。

4

2 に答える 2

0
select top 10 emp_id,count(distinct book_id)
from employeebook 
where isnull(book_id,0)<>0
group by emp_id

クエリを更新

select top 10 e.emp_id,count(distinct b.book_id)
from employeebook e
inner join HistoryBooks b on e.book_id=b.book_id
group by emp_id
于 2013-11-06T08:33:07.373 に答える