sql >> Database >  >> RDS >> PostgreSQL

GROUP BY en COUNT met ActiveRecord

Distinct en Group By ga je verschillende resultaten geven. Om de resultaten te krijgen die u verwacht te gebruiken

Person.group(:name).count
(1.2ms)  SELECT COUNT(*) AS count_all, name AS name FROM "people" GROUP BY "people"."name"
=> {"Dan"=>3, "Dave"=>2, "Vic"=>1} 

Zoals hierboven te zien, zal de groep dingen als een hash retourneren. Hoewel onderscheiden alleen het aantal mensen in totaal retourneert, zoals hieronder te zien is.

Person.distinct(:name).count
(0.4ms)  SELECT DISTINCT COUNT(DISTINCT "people"."id") FROM "people"
=> 6 


  1. Een benadering van indexafstemming - Deel 1

  2. Hoe vind je een tekst in SQL Server-procedures / triggers?

  3. kolom verwijderen bestaat niet

  4. Parseer bestandsnaam en pad van volledig pad