Dann schauen wir uns die Abfrage in der Gänze an und arbeiten uns mal zum Kern weiter vor:
SQL-Code:
SELECT Qechtdat,wer,nummer,
JulianDay(Qechtdat) -
coalesce((SELECT JulianDay(Qechtdat) as Tage ,0)
FROM Zwischen t2
WHERE t2.nummer = t1.nummer AND
JulianDay (t2.Qechtdat) < JulianDay(t1.Qechtdat)
ORDER BY
JulianDay(t2.Qechtdat)
DESC LIMIT 1) AS Tage FROM Zwischen t1
where Jahr = "2019"
and nummer = "139"
Jetzt nehmen wir (ausgehend von den Klammern) alles das, was zum
coalesce(...)
gehört:
SQL-Code:
coalesce((SELECT JulianDay(Qechtdat) as Tage ,0)
FROM Zwischen t2
WHERE t2.nummer = t1.nummer AND
JulianDay (t2.Qechtdat) < JulianDay(t1.Qechtdat)
ORDER BY
JulianDay(t2.Qechtdat)
DESC LIMIT 1)
und nun betrachten wir mal das Innere von
coalesce(...)
SQL-Code:
(SELECT JulianDay(Qechtdat) as Tage ,0)
FROM Zwischen t2
WHERE t2.nummer = t1.nummer AND
JulianDay (t2.Qechtdat) < JulianDay(t1.Qechtdat)
ORDER BY
JulianDay(t2.Qechtdat)
DESC LIMIT 1
Dieses ergibt einfach keinen Sinn und wird darum auch zurecht als fehlerhaft zurückgewiesen.
Ein einfaches Klammern zählen hilft hier nicht.