sql >> Database >  >> RDS >> Mysql

SELECT-lijst staat niet in GROUP BY-clausule en bevat niet-geaggregeerde kolom .... incompatibel met sql_mode=only_full_group_by

Dit

Expressie #1 van de SELECT-lijst staat niet in de GROUP BY-clausule en bevat niet-geaggregeerde kolom 'returntr_prod.tbl_customer_pod_uploads.id' die functioneel niet afhankelijk is van kolommen in de GROUP BY-clausule; dit is niet compatibel met sql_mode=only_full_group_by

wordt eenvoudig opgelost door de sql-modus in MySQL te wijzigen met dit commando,

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

Dit werkt ook voor mij..Ik heb dit gebruikt, omdat er in mijn project veel van dit soort zoekopdrachten zijn, dus ik heb deze sql-modus gewijzigd in only_full_group_by

OF neem gewoon alle kolommen op in de GROUP BY-clausule die is opgegeven door de SELECT-instructie. De sql_mode kan ingeschakeld blijven.

Bedankt... :-)



  1. Hoe kan ik mijn standaarddatabase in SQL Server wijzigen zonder MS SQL Server Management Studio te gebruiken?

  2. SQL selecteer waar niet in subquery geeft geen resultaten

  3. Hoe UPDATE en SELECT tegelijkertijd

  4. Hoe test ik een Oracle Stored Procedure met RefCursor-retourtype?