Sql-Abfrage flexibel gestalten
Verfasst: Mittwoch 21. Oktober 2020, 13:00
Hallo,
ich habe mehrere Tabellen die unter anderem eine Spalte mit der Bezeichnung 'dateinummer' enthalten. Nun möchte ich bei genannter Spalte feststellen, ob es Lücken bei den Nummern gibt. Zum Beispiel:
Hier muss dann 1003, 1004 und 1007 gefunden werden.
Diese Aufgabe erfüllt diese Abfrage bereits.
Wenn ihr eine andere elegantere Variante für SQLite kennt, könnt ihr diese gerne mitteilen.
Mein Problem ist jetzt jedoch ein anderes. Die Zahlen 32709 und 28491 und der Tabellenname (tabellenname_platzhalter) sollen veränderbar sein. Ich habe leider keinen blassen Schimmer, wie ich das nach Python 3 übersetze.
Wie kann ich diese drei Variablen in das SQL einbauen?
ich habe mehrere Tabellen die unter anderem eine Spalte mit der Bezeichnung 'dateinummer' enthalten. Nun möchte ich bei genannter Spalte feststellen, ob es Lücken bei den Nummern gibt. Zum Beispiel:
Code: Alles auswählen
1001
1002
1005
1006
1008
Diese Aufgabe erfüllt diese Abfrage bereits.
Code: Alles auswählen
SELECT A.X FROM (
WITH RECURSIVE
cnt(X) AS (VALUES(28491) UNION ALL SELECT X+1 FROM cnt WHERE X < (32709))
SELECT X FROM cnt ) A LEFT JOIN ( SELECT CAST( dateinummer AS NUMBER ) AS dateinummer FROM tabellenname_platzhalter WHERE dateinummer >= 28491 and dateinummer <= 32709 ) B
ON A.X = B.DATEINUMMER
WHERE B.DATEINUMMER IS NULL
LIMIT ( 32709 - 28491 + 1 )
Mein Problem ist jetzt jedoch ein anderes. Die Zahlen 32709 und 28491 und der Tabellenname (tabellenname_platzhalter) sollen veränderbar sein. Ich habe leider keinen blassen Schimmer, wie ich das nach Python 3 übersetze.
Wie kann ich diese drei Variablen in das SQL einbauen?
Code: Alles auswählen
number_from
number_to
tablename