Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

sonomaster

Como seleciono o restante intaum?

Recommended Posts

armazena os ids dos encontrados e depois selecione denovo usando NOT IN em seu where

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro amigo,

 

Você tem duas alternativas

 

1ª - Trabalhar com dois selects diferentes

 

no primeiro select você faz com o seu where normal (sua busca atual)

no segundo você faz o inverso usando o comando WHERE <campo> NOT IN(parametro).

 

 

2ª - Unir os dois selects

 

Essa talvez seja a mais adequada para se trabalhar com programação. Utilizando o comando UNION você pode unir os resultados das duas querys acima ( desde que você atente em colocar o mesmo número de colunas nos dois selects list)

 

Ficaria mais ou menos assim:

 

 

SELECT

COLUNA1,

COLUNA2

FROM

TABELA 1

WHERE

COLUNA1 = 'X,Y,Z'

 

UNION

 

SELECT

COLUNA1,

COLUNA2

FROM

TABELA1

WHERE

COLUNA1 NOT IN('X,Y,Z')

 

 

 

Com isso você une os dois resultados na ordem em que as querys forem executadas

 

 

Grande abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai pessoal... Vlw mwsmo pelos posts....UNION seria perfeito, o problema é que não consigo ordená-lo.Ele retorna valore aleatórios, corretos mas aleatórios.Tipo assim, se eu procuro por "carro" e o restante ele mostra um pouco do restante, depois carro, depois mais um pouco do restante.fiz assim:

SELECT Col1 FROM tb1 WHERE Col1 LIKE Valor UNION SELECT Col1 FROM tb1 WHERE Col1 NOT IN (Col1) ORDER BY Tipo

Assim ele retorna ordenado pelo campo TIPO mas não pela palavra-chave "Carro".Quando eu uso UNION ALL ele retorna da maneira certa, primeiro os registros onde foi encontrada a palavra chave "Carro", mas repete esses registros (registros onde foi encontrada a palavra-chave).Tah fogo........Mesmo assim brigadão galera!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.