Как я могу получить перестановки элементов из двух подзапросов в T-SQL?

StackOverflow https://stackoverflow.com/questions/856770

  •  21-08-2019
  •  | 
  •  

Вопрос

Допустим, у меня есть два подзапроса:

SELECT Id AS Id0 FROM Table0

=>

Id0
---
1
2
3

and

SELECT Id AS Id1 FROM Table1

=>


Id1
---
4
5
6

Как мне объединить их, чтобы получить результат запроса:

Id0 Id1
-------
1   4
1   5
1   6
2   4
2   5
2   6
3   4
3   5
3   6
Это было полезно?

Решение

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

SELECT A.Id0, B.Id1
FROM (SELECT Id AS Id0 FROM Table0) A, 
     (SELECT Id AS Id1 FROM Table1) B

Грегуар

Другие советы

Декартово соединение, соединение без условия соединения.

select id0.id as id0, id1.id as id1 
from id0, id1

в качестве альтернативы вы можете использовать синтаксис CROSS JOIN, если хотите.

select id0.id as id0, id1.id as id1 
from id0 cross join id1

вы можете заказать свой запрос, если вам нужен конкретный порядок, из вашего примера это выглядит так, как вы хотите

select id0.id as id0, id1.id as id1
from id0 cross join id1 order by id0.id, id1.id

Выберите Table0.id0, таблица 1.id1 из Table0 Полное соединение Table1 на 1 = 1

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top