1

画像

希望の出力が得られるクエリが必要です。次のクエリを使用しています。

select table1.name1,table2.address 
from table1 join table2 
   on(table1.key=table2.key);

それは私に結果を与えていますナットを結合した後、私は各キーに単一の行だけが必要です。
どんな助けでもありがたいです。

4

2 に答える 2

2

任意の組み合わせが許可されているが、キーごとに1行しかない場合は、次のことを試してください。

select table1.name1, MAX(table2.address) address
from table1
    join table2
       on table1.key=table2.key
group by table1.name1
于 2013-02-21T10:53:23.090 に答える
2

このようにしてみてください

select *
from (select table2.address,
      rank() over ( partition by table1.name1 order by table1.key) rn
      from table1 join table2 on(table1.key=table2.key))
where rn = 1
于 2013-02-21T10:53:27.160 に答える