SQL Server 2005の環境しかないのですが、「SQL Server 2000でも動くと思われるSQL」、「SQL Server 2005の機能を使ったSQL」の例を提示しておきます。
1.~SQL Server 2000
(1)概要
SQL Server 2000までは、インラインビューの利用範囲に制限がある(Oracle並には実装していない)と、マイクロソフトの機能比較で記載されています。実際にどの部分まで実装され、どの部分が未実装なのか不詳ですが、以下のSQLを試してみてください。
(2)SQL例
select x.基本コード,x.大分類,中分類
from (select 基本コード,min(大分類) as 大分類
from tableA
group by 基本コード) as x,
(select 基本コード,大分類,min(中分類) as 中分類
from tableA
group by 基本コード,大分類) as y
where x.基本コード=y.基本コード and x.大分類=y.大分類
2.SQL Server 2005~
(1)概要
SQL Server 2005で分析関数が実装されました。今回のようなケースに適用すると便利です。
(2)SQL例
select
基本コード,大分類,中分類
from (select
基本コード,大分類,中分類,
rank() over(partition by 基本コード order by 大分類,中分類) as rank
from tableA) as x
where rank=1
お礼
1.で教えて下さった方で、完璧に出来ました。 派生テーブルと言うものをこれまで1回しか使ったことがなかったのですが、これを機会にきちんと自分のものに出来るよう、理解しておきたいと思います。 2.で教えてくださった方も、今後2005を使うことになると思いますので、忘れないようにしておきたいと思います。 迅速でかつ正確に回答してくださり、本当に本当にありがとうございました。