sql >> Database teknologi >  >> RDS >> Mysql

Hvorfor er SELECT-resultater forskellige mellem mysql og sqlite?

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 .



  1. SQL-fejl ved forsøg på at oprette ny trigger

  2. få korrekt datoformat fra SQL-søgeresultater (datetime.datetime)

  3. dbms_metadata.get_ddl virker ikke

  4. Er elementet initialValue af @TableGenerator ikke understøttet i Hibernate JPA?