Выбрать столбцы из разных таблиц, не создавая комбинации разных строк? - PullRequest
3 голосов
/ 01 февраля 2012

Допустим, у меня есть tableA с col1 и tableB с col2 со следующим содержимым:

Table A
---------
A
B
C
D


Table B
---------
1
2
3
4

Я хочу оператор select, который мне возвращается:

A, 1
B, 2
C, 3
D, 4

Я попытался сделать этот вызов:

Select tableA.col1, tableB.col2 from tableA, tableB 

, но он возвращает следующее:

A, 1
B, 1
C, 1
D, 1
A, 2
..
..
 etc

как мне заставить его просто отозвать это:

A, 1
B, 2
C, 3
D, 4

1 Ответ

3 голосов
/ 01 февраля 2012

Попробуйте это:

select b.val1, b.val1, c.val2 from tableA a
inner join (select ROW_NUMBER() OVER () AS RowNumber, col1 as val1 from tableA) on a.col1 = b.val1
inner join (select ROW_NUMBER() OVER () AS RowNumber, col2 as val2 from tableB) c on c.RowNumber = b.RowNumber
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...