sql >> Database >  >> RDS >> Mysql

MySQL 5.1 t/m 5.7 Bestelling wijzigen Door niet meer te werken

Er is een probleem met uw sql_mode .

Vanaf MySQL 5.7.x bevat de standaard sql-modus ONLY_FULL_GROUP_BY . (Vóór 5.7.5 detecteert MySQL geen functionele afhankelijkheid en is ONLY_FULL_GROUP_BY standaard niet ingeschakeld).

ONLY_FULL_GROUP_BY :Query's voor niet-deterministische groepering worden afgewezen

Raadpleeg voor meer informatie de documentatie van sql_mode

Methode 1:

Controleer de standaardwaarde van sql_mode:

SELECT @@sql_mode

Verwijder ONLY_FULL_GROUP_BY vanaf de console door onderstaande query uit te voeren:

SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));

Methode 2:

Open phpmyadmin voor het bewerken van uw sql_mode

  • Log in op phpmyadmin en open localhost
  • Bovenaan op Variabelen bovenaan in menu-items en zoek naar sql-modus
  • Klik op de bewerkknop om ONLY_FULL_GROUP_BY te verwijderen en bewaar



  1. Een andere manier om de SQL-query te verbeteren om unie te voorkomen?

  2. Voeg meerdere rijen toe in slechts één rij vanuit een enkele tabel

  3. Wat is de juiste naam voor een associatietabel (een veel-op-veel-relatie)

  4. Werk dubbele rijen alleen bij met een MAX-functie in SQL