Vers. 3 SQL tilretning eksempel

<< Click to Display Table of Contents >>

Navigation:  SKScompleteDB specifikation >

Vers. 3 SQL tilretning eksempel

Previous pageReturn to chapter overviewNext page

Eksempel på SQL tilretning til SQLite

Hvis du f.eks. har gemt et brugerdefineret SQL-udtryk i vers. 1 ell. 2 for at hente de diagnoser, der i løbet af de sidste 6 år er udgået og ikke erstattet af tilsvarende koder med ny tekst, som i nedenstående:

 

/* Udgåede ikke er erstattede diagnose kodenumre sidste 6 år */

SELECT SKSkode

INTO MEMORY SKStemp

FROM SKScomplete

WHERE DatoSlut > CURRENT_DATE;

 

SELECT sks.*

FROM SKScomplete AS sks

LEFT JOIN MEMORY SKStemp AS mt

ON sks.SKSkode = mt.SKSkode

WHERE DatoSlut BETWEEN (CURRENT_DATE - 365*6) AND CURRENT_DATE

AND sks.Kat = 'dia'

AND mt.SKSkode IS NULL;

 

så skal dette for at kunne fungere med SQL-dialekten i SQLite tilrettes som nedenstående. Se også om JULIANDAY.
Grå kode: kode der slettes
Rød kode: kode der tilføjes

 

/* Udgåede ikke er erstattede diagnose kodenumre sidste 6 år */

DROP TABLE IF EXISTS SKStemp;

CREATE TEMPORARY TABLE SKStemp AS

SELECT SKSkode

--INTO MEMORY SKStemp

FROM SKScomplete

WHERE DatoSlut > CURRENT_DATE;

 

SELECT sks.*

FROM SKScomplete AS sks

LEFT JOIN MEMORY SKStemp AS mt     << MEMORY skal slettes

ON sks.SKSkode = mt.SKSkode

--WHERE DatoSlut BETWEEN (CURRENT_DATE - 365*6) AND CURRENT_DATE

WHERE JULIANDAY(DatoSlut) BETWEEN (JULIANDAY(CURRENT_DATE) - 365*6) AND JULIANDAY(CURRENT_DATE)

AND sks.Kat = 'dia'

AND mt.SKSkode IS NULL;

__________________________
Online hjælp 10. juni 2026; Copyright © 2017-2026 Niels Knabe