Como usar diferentes selects em uma decraração

4 respostas
S

Olá pessoal,

a situação é a seguinte, necessito realizar um número de selects para realizar uma condição, somente um dos selects
vai satisfazer essa condição…

um exemplo…

select a.nome from tableA a, tableB b, tableC c where a.id = b.id and b.id=c.id; select a.nome from tableA a, tableX x, tableY y where x.id = y.id

Como faço para usar esses diferentes select, em diferentes tabelas em uma única instrução select…
Cada select em separado funciona perfeitamente, entretanto ao juntar para uma única declaração… dá erro…

Já tentei assim

select nome from select a.nome from tableA a, tableB b, tableC c where a.id = b.id and b.id=c.id or select a.nome from tableA a, tableX x, table y where x.id = y.id

e não funcionou…

4 Respostas

kzar.razk

Union trará várias linhas, declarando-se cada select como uma tabela trará uma única (talvez) linha…

S

consegui depois de diferentes tentativas…

select nome from tableA where nome in(select a.nome from tableA a, tableB b, tableC c where a.id = b.id and b.id=c.id) or nome in(select a.nome from tableA a, tableX x, table y where x.id = y.id)

allancmm

Faz com Inner Join, eh mais rapido, computacionalmente, que fazer com selects aninhados.

S

interessante… vou pesquisar… achava que era o contrário…

Criado 22 de fevereiro de 2011
Ultima resposta 23 de fev. de 2011
Respostas 4
Participantes 3