Jeg prøvede at rode med nogle varianter af forespørgsler.
Det ser ud til, at sqlite har fejl i brugen af tidligere erklærede felter i en indlejret HAVING udtryk.
I dit eksempel avg1
under sekund at have er altid lig med 5,0
Se:
select T1.id, avg(T1.score) avg1
from foo T1
group by T1.id
having not exists (
SELECT 1 AS col1 GROUP BY col1 HAVING avg1 = 5.0);
Denne returnerer intet, men udførelse af følgende forespørgsel returnerer begge poster:
...
having not exists (
SELECT 1 AS col1 GROUP BY col1 HAVING avg1 <> 5.0);
Jeg kan ikke finde nogen lignende fejl på sqlite billetliste .