dポイントプレゼントキャンペーン実施中!

Accessのクエリーで質問です。

下記データを住所で名寄せして同一住所の名前を列に展開するようなクエリーの作成は可能でしょうか?クロス集計でやってみましたが、うまくいきません。
同一住所で違う名前のデータは最大で5件ほどです。

<データ>
住所     名前
----------------------
住所1-1-1 名前あ
住所1-2-1 名前い
住所1-2-1 名前う
住所1-3-1 名前え

<出力結果>
住所     名前1  名前2
----------------------
住所1-1-1 名前あ
住所1-2-1 名前い 名前う
住所1-3-1 名前え

宜しくお願いいたします。

A 回答 (1件)

住所と名前で一意になっている前提ですが、



select
住所
, max(iif(cnt = 0, 名前, null)) as 名前1
, max(iif(cnt = 1, 名前, null)) as 名前2
, max(iif(cnt = 2, 名前, null)) as 名前3
, max(iif(cnt = 3 ,名前, null)) as 名前4
, max(iif(cnt = 4, 名前, null)) as 名前5
from(
select a.住所,a.名前,(select count(*) from データ as b where a.住所 = b.住所 and a.名前 > b.名前) as cnt
from データ as a
)
group by 住所;

でどうでしょうか。
    • good
    • 0
この回答へのお礼

ありがとうございます。
カウントの使い方、ここまで思いつきませんでした。
助かりました!!

お礼日時:2011/11/17 17:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す