none
varios selects - SQL ajuda RRS feed

  • Pergunta

  • Ola pessoal boa tarde,

    Estou com uma dificuldade no comando abaixo:

    select distinct tblwriandamentos.FK_tblWRIRecepcaoRecepcao, tblwriandamentos.Data

     

     from tblwriandamentos

     

    inner join tblsipusuarios on tblSIPUsuarios.IDUser = tblwriandamentos.FK_tblWRIUsuarioOrigem_Id

     

    where tblwriandamentos.FK_tblWRIUsuarioOrigem_Id = 70

     

    and tblwriandamentos.FK_tblWRITpAndamento_Id = 56 

    and tblwriandamentos.FK_tblWRITpAndamento_Id = 91

     

    order by tblwriandamentos.Data desc

    Onde tem os 2 ANDs o select nao traz nenhum resultado, porem na tabela existe os dois IDs juntos, tanto 56 como 91 no mesmo titulo.

    Exemplo, no titulo 234589 - existe neste titulo o ID 56 e 91, se eu comentar qualquer uma das linhas do AND, o select traz o titulo 234589, e outros mais. Porem deixando os 2 ands nao traz nenhum resultado.

    Nao entendo o porque, e gostaria de uma ajuda, sera que seria o caso de fazer 2 selects? 

    sexta-feira, 20 de fevereiro de 2015 15:51

Respostas

  • Deleted
    sexta-feira, 20 de fevereiro de 2015 18:44
  • Patricia,

    Vc está colocando duas condições para o mesmo ID (FK_TBLWRITPANDAMENTO), sendo que uma destes filtros anula o outro.

    Tente fazer como indiquei abaixo, empregando o operador IN:

    select distinct tblwriandamentos.FK_tblWRIRecepcaoRecepcao, tblwriandamentos.Data 
    from tblwriandamentos
    inner join tblsipusuarios on tblSIPUsuarios.IDUser = tblwriandamentos.FK_tblWRIUsuarioOrigem_Id
    where tblwriandamentos.FK_tblWRIUsuarioOrigem_Id = 70
    and tblwriandamentos.FK_tblWRITpAndamento_Id IN (56, 91)

    • Sugerido como Resposta 'Natan Silva sexta-feira, 20 de fevereiro de 2015 16:02
    • Marcado como Resposta Ricardo Barbosa Cortes segunda-feira, 23 de fevereiro de 2015 14:20
    sexta-feira, 20 de fevereiro de 2015 15:56

Todas as Respostas

  • Patricia,

    Vc está colocando duas condições para o mesmo ID (FK_TBLWRITPANDAMENTO), sendo que uma destes filtros anula o outro.

    Tente fazer como indiquei abaixo, empregando o operador IN:

    select distinct tblwriandamentos.FK_tblWRIRecepcaoRecepcao, tblwriandamentos.Data 
    from tblwriandamentos
    inner join tblsipusuarios on tblSIPUsuarios.IDUser = tblwriandamentos.FK_tblWRIUsuarioOrigem_Id
    where tblwriandamentos.FK_tblWRIUsuarioOrigem_Id = 70
    and tblwriandamentos.FK_tblWRITpAndamento_Id IN (56, 91)

    • Sugerido como Resposta 'Natan Silva sexta-feira, 20 de fevereiro de 2015 16:02
    • Marcado como Resposta Ricardo Barbosa Cortes segunda-feira, 23 de fevereiro de 2015 14:20
    sexta-feira, 20 de fevereiro de 2015 15:56
  • Deleted
    sexta-feira, 20 de fevereiro de 2015 18:44