Ir ao conteúdo
  • Cadastre-se
cristiansuzuki

Fazer uma condição sintaxe SQL no oracle

Recommended Posts

Bom dia pessoal!

Sou novo na parte de sintaxe SQL e preciso de um auxílio.

Estou utilizando Oracle e estou com o seguinte problema:

Preciso selecionar somente os pacientes (PAC.PAC_NOME) que fizeram respectivamente exames nas categorias C e E ( CTF.CTF_CATEG in  ( 'C','E' )  ).

Ocorre que o select está trazendo os pacientes que fizeram C e E mas também trás os que fizeram somente C e somente E. Como faço uma condição para trazer os pacientes que fizeram C e E respectivamente dentro da data informada?

Segue o código que eu fiz:

SELECT PAC.PAC_NOME, 
       SMK.SMK_NOME, 
       SUM ( SMM.SMM_QT ), 
       CTF.CTF_CATEG
 FROM PAC, SMM, SMK, CTF, CNV CV, STR, ESP, OSM, ESM, PSV 
 WHERE (  SMM.SMM_SFAT <> 'C'  ) AND 
       ( OSM.OSM_SERIE = SMM.SMM_OSM_SERIE ) AND 
       ( OSM.OSM_NUM = SMM.SMM_OSM ) AND 
       (  ( CV.CNV_COD = NVL ( SMM.SMM_CNV_COD, OSM.OSM_CNV ) )  ) AND 
       ( STR.STR_COD = SMM.SMM_STR ) AND 
       ( SMK.SMK_TIPO = SMM.SMM_TPCOD ) AND 
       ( SMK.SMK_COD = SMM.SMM_COD ) AND 
       ( SMK.SMK_TIPO = CTF.CTF_TIPO ) AND 
       ( SMK.SMK_CTF = CTF.CTF_COD ) AND 
       ( OSM.OSM_PAC = PAC.PAC_REG ) AND 
       ( PSV.PSV_COD = SMM.SMM_MED ) AND 
       (  ESM.ESM_MED = PSV.PSV_COD ) AND 
       (  ESP.ESP_COD = ESM.ESM_ESP ) AND 
       (  ESM.ESM_DEFAULT = 'S'  )  AND 
       ( CV.CNV_COD not in  ( 'ICB','44' )  ) AND 
       ( STR.STR_NOME not in  ( 'ICB','CEC' )  ) AND 
( CTF.CTF_CATEG in  ( 'C','E' )  ) AND
       ( ESP.ESP_COD <> 'ICB' ) AND 
       ( SMM.SMM_VLR > 0 ) AND 
       ( SMM.SMM_COD not in  ( '1AUX','2AUX','3AUX' )  ) AND 
       ( ( OSM.OSM_DTHR >= to_date ( '01/10/2016 00:00', 'dd/mm/yyyy hh24:mi' ) AND 
           OSM.OSM_DTHR <  to_date ( '27/10/2016 00:00', 'dd/mm/yyyy hh24:mi' ) )    )
GROUP BY   PAC.PAC_NOME,          
                     SMK.SMK_NOME,            
                     CTF.CTF_CATEG
ORDER BY PAC.PAC_NOME ASC  

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×