sql >> Database teknologi >  >> RDS >> PostgreSQL

GroupingError:ERROR:kolonnen skal vises i GROUP BY-sætningen eller bruges i en aggregeret funktion

Du har ikke tilladelse til at vælge reviews.id (valgt implicit gennem jokertegnet * ) uden at tilføje det til GROUP BY klausul eller anvendelse af en aggregeret funktion som avg() . Løsningen er at gøre et af følgende:

  1. Fjern jokertegnet * fra dit valg
  2. Tilføj feltet reviews.id til din gruppeklausul
  3. Vælg reviews.id eksplicit og anvende en aggregeret funktion på den (f.eks. sum(reviews.id) )
  4. Erstat jokertegnet * med det tabelspecifikke jokertegn albums.*

Den anden og tredje mulighed giver dog ikke meget mening i dit scenario. Baseret på din kommentar tilføjede jeg mulighed fire.



  1. Sådan justerer du ydelsen af ​​SQL Server, Azure SQL Database og Amazon RDS

  2. Top 7 databaser

  3. MariaDB JSON_QUERY() Forklaret

  4. LIKE vs CONTAINS på SQL Server