PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

ActiveRecord का उपयोग करके GROUP BY और COUNT

Distinct और Group By आपको अलग परिणाम देने जा रहे हैं। अपेक्षित परिणाम प्राप्त करने के लिए आप उपयोग करना चाहेंगे

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} 

ऊपर देखा गया, समूह चीजों को हैश के रूप में लौटाएगा। जबकि विशिष्ट नीचे देखे गए कुल लोगों की संख्या देता है।

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. पोस्टग्रे एसक्यूएल इंटीजर के लिए पसंद है

  2. लॉक की गई पंक्तियों की प्रतीक्षा से बचने के लिए एडवाइजरी लॉक या NOWAIT?

  3. पीडीओ अनबाउंड पैरामीटर के साथ अपवाद नहीं फेंक रहा है (और क्वेरी में कोई चर नहीं)

  4. Postgres में दो तिथियों के बीच रविवार को छोड़कर दिनों की गणना कैसे करें?

  5. Postgres क्वेरी विंडो में पैरामीटर के साथ मेरे तदर्थ SQL का परीक्षण कैसे करें