Jag försökte bråka med några varianter av sökfrågan.
Det verkar som att sqlite har fel vid användning av tidigare deklarerade fält i en kapslad HAVING uttryck.
I ditt exempel avg1
under sekund att ha är alltid lika med 5,0
Titta:
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);
Den här returnerar ingenting, men körning av följande fråga returnerar båda posterna:
...
having not exists (
SELECT 1 AS col1 GROUP BY col1 HAVING avg1 <> 5.0);
Jag kan inte hitta något liknande fel på sqlite biljettlista .