PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

GROUP BY và COUNT bằng ActiveRecord

DistinctGroup By sẽ cho bạn những kết quả khác nhau. Để có được kết quả như mong đợi, bạn sẽ muốn sử dụng

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} 

Ở trên, nhóm sẽ trả về mọi thứ dưới dạng băm. Trong khi khác biệt chỉ trả về tổng số người, xem bên dưới.

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. Mục tiêu thời gian khôi phục Pgbackrest

  2. Nhắm mục tiêu các giá trị cụ thể từ API JSON và chèn vào Postgresql, sử dụng Python

  3. thiết lập PostgreSQL với Laravel trong MAMP

  4. Sự cố bảng chéo / trục PostgreSQL

  5. không thể làm cho chèn PostgreSQL đơn giản hoạt động