2015-07-27 3 views
2

Скажем, у меня есть эти две таблицы (столбец идентификатор для table1, буквы столбцов для table2):Объединение столбцов из двух таблиц с ничего общего с Postgres

+ ----- +
| id |
+ ----- +
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
+ ----- +

+ --------- +
| буквы |
+ --------- +
| a |
| b |
| c |
| d |
| e |
+ --------- +

Как бы соединить эти две таблицы вместе, так что появляется следующее ?:
+ ----- + --------- +
| id | буквы |
+ ----- + --------- +
| 1 | a |
| 2 | b |
| 3 | c |
| 4 | d |
| 5 | e |
+ ----- + --------- +

Я использую postgreSQL-9.2.

ответ

1

Использование row_number() функции в условие соединения:

select id, letter 
from (select id, row_number() over (order by 1) as rn from ids) i 
join (select letter, row_number() over (order by 1) as rn from letters) l 
on i.rn = l.rn;