Come posso ottenere permutazioni di elementi da due sottoquery in T-SQL?
-
21-08-2019 - |
Domanda
Diciamo che ho due sottointerrogazioni:
SELECT Id AS Id0 FROM Table0
=>
Id0
---
1
2
3
and
SELECT Id AS Id1 FROM Table1
=>
Id1
---
4
5
6
Come faccio a combinare questi per ottenere il risultato della query:
Id0 Id1
-------
1 4
1 5
1 6
2 4
2 5
2 6
3 4
3 5
3 6
Soluzione
Prova questo:
SELECT A.Id0, B.Id1
FROM (SELECT Id AS Id0 FROM Table0) A,
(SELECT Id AS Id1 FROM Table1) B
Grégoire
Altri suggerimenti
cartesiana, un join senza condizione di join
select id0.id as id0, id1.id as id1
from id0, id1
In alternativa è possibile utilizzare la CROSS JOIN sintassi, se si preferisce
select id0.id as id0, id1.id as id1
from id0 cross join id1
è possibile ordinare la query se si desidera un ordine specifico, dal vostro esempio sembra che si desidera
select id0.id as id0, id1.id as id1
from id0 cross join id1 order by id0.id, id1.id
SELEZIONARE Table0.Id0, Table1.Id1 A PARTIRE DAL Table0 Completa Join Table1 su 1 = 1
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow