none
Select Inverso RRS feed

  • Pergunta

  •  

    Boa tarde gente.....

    Estou com uma duvida em relação ao SQL 2000

     

    A seguinte consulta abaixo me retorna valores iguais para fins de confirmação:

     

    select r.nome, r.rg, i.rg_dig, i.nome as Nome_Inativos, i.situacao
    from resultado r
    inner join inativos i on r.rg = i.rg_dig
    order by r.nome

     

    Bom..o que eu gostaria era que a consulta fosse alterada para me mostrar os valores que não são exibidos....ex: nesta consulta acima o valor retornado foram de 63011 row´s....a tabela inativos possui 63017 row´s.....eu gostaria que a consulta acima me retornassem os 6 row´s que existe de diferença, pois constato que o r.rg é diferente i.rg_dig, porém, se eu alterar o select acima para r.rg <> i.rg_dig terei problemas no resultado...pois o r.rg da row 1 será sempre diferente do i.rg_dig da row 2, 3, 4, 5....gerando um resultado de consulta totalmente errado...o que eu queria mesmo é que ele me trouxesse os 6 row´s que não foram exibidos no select acima...como procedo?

     

    segunda-feira, 18 de agosto de 2008 19:18

Respostas

Todas as Respostas

  • Boa Tarde,

     

    Tente o seguinte:

     

    Code Snippet

    select i.rg_dig, i.nome as Nome_Inativos, i.situacao

    from inativos i

    where not exists

    (select * from resultado r where r.rg = i.rg_dig)

     

     

    [ ]s,

     

    Gustavo

    segunda-feira, 18 de agosto de 2008 20:09
  • Vlw Gustavo,

     

    Funcionou certinho....matou a pau o problema!!!!

     

    Thank´s

     

     

    segunda-feira, 18 de agosto de 2008 20:18
  •  

    Gustavo,

     

    Em relação aos códigos acima, o primeiro que postei foi o resultado do codigo abaixo que foi inserido na tabela Resultado

     

     

    SELECT p.nome, p.npf as npf_pf, r.npf as npf_rh, r.rgf as rg, pv.npf as pv_npf, pv.nantigo as pv_nantigo, pv.dig as pv_dig
    --into resultado
    FROM Pessoa_Fisica p
    INNER JOIN Recursos_Humanos r ON p.npf = r.npf
    INNER JOIN prontuarios_vendas pv on p.npf = r.npf and pv.npf = p.npf
    ORDER BY nome

     

    Bom...seguindo o exemplo do código acima, onde você utilizou o recurso NOT EXISTS, eu consigo alterar esse select acima para utilizar o mesmo recurso? pq com o select acima, jogo o que me vem na tabela resultado que utilizo para fazer o cruzamento com os inativos, conforme o código que você me indicou....porém, existe uma diferença de cerca de 20.000 registros que não são trazidos neste select acima....queria saber quais são eles, pois não estou conseguindo adequar o NOT EXISTS nele....como devo proceder?

     

    Grato,

    terça-feira, 19 de agosto de 2008 17:59