sql >> Database >  >> RDS >> PostgreSQL

GroupingError:ERROR:kolom moet voorkomen in de GROUP BY-clausule of worden gebruikt in een aggregatiefunctie

U mag reviews.id niet selecteren (impliciet geselecteerd via het jokerteken * ) zonder het toe te voegen aan de GROUP BY clausule of het toepassen van een aggregatiefunctie zoals avg() . De oplossing is om een ​​van de volgende dingen te doen:

  1. Verwijder het jokerteken * uit uw selectie
  2. Voeg het veld toe reviews.id naar uw groepsclausule
  3. Selecteer reviews.id expliciet en pas er een verzamelfunctie op toe (bijv. sum(reviews.id) )
  4. Vervang het jokerteken * met het tabelspecifieke jokerteken albums.*

De tweede en derde optie hebben echter niet veel zin in uw scenario. Op basis van uw opmerking heb ik optie vier toegevoegd.



  1. Een afbeelding van Oracle invoegen in SQL Server

  2. Hoe Acosh() werkt in PostgreSQL

  3. Hoe kan SQL Workload Analysis u helpen?

  4. FOUT:Kan rij 0, col -1 van CursorWindow niet lezen. Zorg ervoor dat de cursor correct is geïnitialiseerd voordat u toegang krijgt tot gegevens