Tjek for illegalt duplikate indlæggelsesnumre
|
<< Click to Display Table of Contents >> Tjek for illegalt duplikate indlæggelsesnumre |
![]() ![]()
|
Anvendt SQL syntaks
SELECT
np.PersonId
, np.Fodselsdato
, np."GA hele uger" AS "GAuger"
, np."GA + dage" AS np."GA+dage"
, np.Fodselsvaegt
, n2."Indlaeggelses Nr"
, COUNT(n2.PersonId) AS "{Antal registr}"
FROM NeoPers np, Neobase2 n2
WHERE
np.PersonId = n2.PersonId
AND
(np.PersonId IN
(SELECT n2y.PersonId
FROM NeoPers npy, Neobase2 n2y
WHERE
(n2y.PersonId = npy.PersonId)
AND (EXTRACT(YEAR From npy.Fodselsdato) > 0)
AND (EXTRACT(YEAR From n2y.Indlaeggelsesdato) > 0)
AND (EXTRACT(YEAR From n2y.Udskrivelsesdato) = 2004)
AND ((npy."GA hele uger" >= 0)
AND (npy.Fodselsvaegt >= 0))
AND ((npy."GA hele uger" < 99999)
AND (npy.Fodselsvaegt < 99999))
)
)
GROUP BY
np.PersonId
, np.Fodselsdato
, np."GA hele uger"
, np."GA + dage"
, np.Fodselsvaegt
, n2."Indlaeggelses Nr"
HAVING
(COUNT(n2.PersonId) > 1)
ORDER BY
np.PersonId
, np.Fodselsdato
, np."GAuger"
, np."GA+dage"
, np.Fodselsvaegt
, n2."Indlaeggelses Nr"
, n2."{Antal registr}";
Kommentar
Udtrykket kan naturligvis afkortes med fjernelse af nogle af de udviste felter, der dog er medtaget for at gøre forespørgslens output mere oplysende.
De i programmet andvendte årstals-, GA- og FV-variable, som vist i en række af de andre NeoBase SQL-eksempler, er her vist som de værdier, der efter variabel-substitution er anvendt i det endelige SQL-udtryk.
Findes også som eksempel i AbsDB SQL-syntaks.
_____________________________
7. maj 2017 Copyright © 2003-2014 Niels Knabe
[ #114 ]