Primeira visita

SQL

Query

Transact-SQL

29/10/2020

Galera preciso ajustar esse relatório para trazer apenas os pacientes que visitaram pela primeira vez mas está trazendo resultados um pouco estranhos (números altos)

SELECT CONVERT( CHAR(11), OSM.OSM_DTHR, 103 ),
COUNT ( DISTINCT PAC.PAC_REG )

FROM PAC
INNER JOIN OSM ON ( OSM.OSM_PAC = PAC.PAC_REG )

WHERE
OSM.OSM_DTHR BETWEEN '2020-09-01 00:00:00' AND '2020-09-30 23:59:59' AND
NOT EXISTS ( SELECT PAC.PAC_REG WHERE OSM.OSM_PAC = PAC.PAC_REG AND OSM.OSM_DTHR < '2020-09-01 00:00:00' )

GROUP BY
CONVERT(CHAR(11), OSM.OSM_DTHR, 103 )

ORDER BY
CONVERT(CHAR(11), OSM.OSM_DTHR, 103 )
Isnar Filho

Isnar Filho

Curtidas 0

Melhor post

Imex

Imex

29/10/2020

Boa tarde,

Acho que está faltando o From na query do Exists:

NOT EXISTS ( SELECT PAC.PAC_REG FROM OSM WHERE OSM.OSM_PAC = PAC.PAC_REG AND OSM.OSM_DTHR < '2020-09-01 00:00:00' )


Espero que ajude
GOSTEI 1

Mais Respostas

Chromusmaster

Chromusmaster

29/10/2020

Se os pacientes visitaram pela primeira vez não teria que colocar a condição de group by pela data de visita ? E limitar por paciente o retorno de uma linha por paciente?

GOSTEI 1
Emerson Nascimento

Emerson Nascimento

29/10/2020

o que determina que houve uma visita?

GOSTEI 0
POSTAR