Fórum Problemas com SQL, me matando.. #286213

27/06/2005

0

Olá amigos, estou com um problema numa consulta e não acho como resolver, talvez o problemas seja simples, mas se possivel gostaria q alguem me desse um Help.
O pobrema é o seguinte:
Tenho uma Tabela chamada Exame. nessa tabela tenho dois campos
1. CodigoDoMedico
2. CodigoDoMedicoAuxiliar
A pesquisa é:
Select * from exame e
where
(
(e.data_exame >=:dt1) and
(e.data_exame <=:dt2) and
(e.CodigoDoMedico =:idCod) or
(e.CodigoDoMedicoAuxiliar=:idcod)
)
order by e.data_exame

EM MIUDOS....
Preciso Saber todos os Exames que o Medico ´X´ efetuou em um determinado periodo de tempo, Sendo ele Auxiliar ou Principal..

O Resultado da pesquisa:
Bom, A consulta traz os Resultados necessarios, porem tambem traz exames que estão fora do periodo informa Ex.: o Usuario Informa as Datas: 1: 01/05/2005 até 30/05/2005 e no resultado acaba vindo registros de outros messes como 01/04/2005, 13/08/2005.
Tenho quase certeza que o problema pode ser no ´OR´..mas tenho que fazer essa pesquisa...

Alguém entendeu? Pode me ajudar? Ficarei muito grato...


Daniel Martins

Daniel Martins

Responder

Posts

27/06/2005

Rjun

Monte assim sua instrução SQL:

Select * from 
  exame e 
where 
  ((e.data_exame >=:dt1) and (e.data_exame <=:dt2)) and
  ((e.CodigoDoMedico =:idCod) or (e.CodigoDoMedicoAuxiliar=:idcod))
order by 
  e.data_exame 



Responder

Gostei + 0

27/06/2005

Fernando

Select * from exame
where
(e.data_exame >=:dt1 and e.data_exame <=:dt2) and (e.CodigoDoMedico =:idCod) and
(e.CodigoDoMedicoAuxiliar=:idcod)
order by e.data_exame


Responder

Gostei + 0

27/06/2005

Emerson Nascimento

tente assim:

Select * from exame e
where (e.data_exame between :dt1 and :dt2)
and (e.CodigoDoMedico=:idCod or e.CodigoDoMedicoAuxiliar=:idcod)
order by e.data_exame


Responder

Gostei + 0

28/06/2005

Daniel Martins

ae galera, valeu pela ajuda...
Acho q preciso de ferias...


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar