sql >> Databáze >  >> RDS >> PostgreSQL

Vraťte seskupený seznam s výskyty pomocí Rails a PostgreSQL

Váš problém:

Bohužel přísnost Postgresu tento dotaz přerušuje, protože vyžaduje, aby byla všechna pole specifikována ve skupině podle klauzule.

Nyní se to poněkud změnilo s PostgreSQL 9.1 (cituji poznámky k vydání 9.1):

Povolit jiné než GROUP BY sloupců v seznamu cílů dotazu, když je primární klíč zadán v GROUP BY klauzule (Peter Eisentraut)

A co víc, základní dotaz, který popisujete, by ani nenarazil na toto:

Zobrazit seznam 5 nejčastěji používaných značek spolu s časy, kdy byly označeny.

SELECT tag_id, count(*) AS times
FROM   taggings
GROUP  BY tag_id
ORDER  BY times DESC
LIMIT  5;

Funguje v každém případě.




  1. Jak zdokumentovat databázi SQL Server

  2. Jak rychle upravit hodnoty v tabulce v SQL Server Management Studio?

  3. Rails:Postgres oprávnění k vytvoření databáze na rake db:create:all odepřeno

  4. Nejlepší řešení stránkování pomocí SQL Server 2005?