Как сделать уникальные соответствия ?

paulluap
Дата: 27.10.2015 15:38:53
Всем привет!

Есть таблица1:

t_name t_type
------------------------
t1_name1 type1
t1_name2 type1
t1_name3 type1


Есть таблица2:

t_name t_type
------------------------
t2_name1 type2
t2_name2 type2

На выходе нужно получить вот такое:
t1_name1 t2_name1
t1_name2 t2_name2
t1_name3 <пусто>

В левой колонке должны быть значения типа type1, а в правой - значения типа type2.

Мне нужно, чтобы на выходе было НЕдекартового произведение - чтобы не было строк:
(t1_name1, t2_name2), (t1_name2, t2_name1), (t1_name3, t2_name1), (t1_name3, t2_name2).

То есть, чтобы каждое значение просматривалось только один раз - если t1_name1 я поставил в соответствие t2_name1, то все, больше я их не трогаю. Обычное связывание дает лишние строки. Подскажите, как мне так сделать выборку по этим таблицам ?

Надеюсь доступно объяснил.
Заранее спасибо.
EDUARD_2
Дата: 27.10.2015 15:46:34
paulluap,

не понятна задача, сджоини по rownum тогда уж

select x.t_name, t.t_name from (select rownum rn, b.t_name from tbl1 b) t
inner join (select rownum rn, a.t_name from tbl2 a) x on x.rn = t.rn


так чтоле
ArtNick
Дата: 27.10.2015 15:56:04
paulluap,
Сджойни и убери дубликаты группировкой
paulluap
Дата: 27.10.2015 15:59:00
EDUARD_2,

Спасибо за наводку, все получилось. Совсем забыл про rownum.
ArtNick
Дата: 27.10.2015 16:33:14
paulluap

На выходе нужно получить вот такое:
t1_name1 t2_name1
t1_name2 t2_name2
t1_name3 <пусто>


неужели?
paulluap
Дата: 27.10.2015 16:45:30
ArtNick,

Да, поспешил. Для следующих наборов данных все пойдет по известной дороге.
paulluap
Дата: 28.10.2015 09:32:29
Вдруг кому пригодится - нумеровал строки так:

ROW_NUMBER() over(partition by [группировка по типу] order by [ПОЛЕ ДЛЯ СОРТИРОВКИ])


Все получилось как я и хотел.