sql >> Database >  >> RDS >> Mysql

MySQL-probleem met geaggregeerde functie

De HAVING clausule wordt gebruikt om groepen rijen te filteren. U verwijst naar min(a) en max(a) die (bij afwezigheid van een GROUP BY clausule) aggregeren over alle a waarden in de tabel, maar gebruik dan een vergelijking met een enkele a waarde.

Dus welke a waarde die MySQL zou moeten gebruiken? Alle andere RDBMS'en die ik ken, zouden op dit moment een fout geven, maar MySQL staat dit wel toe. Uit de documenten

Dus in jouw geval blijkt uit de resultaten die je krijgt dat het uiteindelijk 1 . heeft gebruikt als de scalaire waarde voor a maar dit gedrag is niet gegarandeerd en het had evengoed 2 . kunnen gebruiken of een andere bestaande a waarde.




  1. [BIJGEWERKT 2020-01-23] Microsoft Office 365 Build 1912 Breekt de identiteit van ODBC Linked Tables

  2. Automatische gegevensversie in MariaDB Server 10.3

  3. libpqxx gebruiken om gegevens in bulk op te slaan OF hoe de COPY-instructie te gebruiken in libpqxx

  4. Prestatiestraf voor geneste mysql-query's