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

Forespørgsel efter top N pr. gruppekode fungerer for MySQL, men andet resultat for MariaDB

Forespørgselsudførelsen er tilladt at ignorere ORDER BY i FROM ( SELECT ... ) . Dette er sandsynligvis den egentlige årsag til den forskel, du ser. (Jeg tror ikke, Gordons svar er relevant.)

Problemet diskuteres her (for 4 år siden):https://mariadb.com/kb/da/mariadb/group-by-trick-has-been-optimized-away/ ; der har én løsning via en indstilling.

Nogle andre løsninger er her:http://mysql.rjweb.org/doc.php/groupwise_max ; de er designet til at være effektive.

Endnu en mulig løsningen er at tilføje en falsk LIMIT med et stort tal på underforespørgslen.



  1. Sådan fjerner du standardværdien af ​​kolonnen i MySQL

  2. Java - Sådan får du kolonnenavn på resultatsæt

  3. Få timedata med huller fra midnat til nu

  4. oracle SQL hvordan man fjerner tid fra dato