0

テーブルが 2 つあり、テーブル 2 にはショップの住所が多数含まれています。表 2 は、Shop_ID による表 1 を参照しています。そのように選択したい [画像を参照] 助けてください!

ここに画像の説明を入力

4

1 に答える 1

0

使用できますrow_number()

select shop_id, 
  shop_name,
  shop_address
from
(
  select t1.shop_id,
    t1.shop_name,
    t2.shop_address,
    row_number() over(partition by t1.shop_id
                      order by t1.shop_name, t2.shop_address) rn
  from table_1 t1
  inner join table_2 t2
    on t1.shop_id = t2.shop_id
) src
where rn = 1

SQL Fiddleのデモを見る

集計関数を使用することもできます。

select t1.shop_id, 
  t1.shop_name,
  max(t2.shop_address) shop_address
from Table1 t1
inner join table2 t2
  on t1.shop_id = t2.shop_id
group by t1.shop_id, t1.shop_name

デモで SQL Fiddle を参照してください

于 2013-01-15T18:40:12.903 に答える