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

Tổng hợp theo giá trị trung bình trong SQL

Bạn có thể sử dụng các chức năng cửa sổ. Giả sử đây là giá trị số:

select cobrand_id, avg(xsum) as median
from (select m.*,
             row_number() over (partition by cobrand_id order by xsum) as seqnum,
             count(*) over (partition by cobrand_id) as cnt
      from tmp_median m
     ) m
where 2*seqnum in (cnt, cnt + 1, cnt + 2)
group by cobrand_id;

where mệnh đề lọc các hàng thành 1 hoặc 2 cho mỗi cobrand_id (lưu ý 2* ), vì vậy điều này hoạt động cho cả số chẵn và số lẻ trong mỗi phân vùng. Giá trị trung bình của các giá trị này sau đó là giá trị trung bình.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tạo DDL có lập trình trên Postgresql

  2. C #, Entity Framework Core &PostgreSql:chèn một hàng đơn mất 20 giây

  3. Trạng thái HTTP 500 - java.lang.NoClassDefFoundError:java / time / temporal / TemporalField khi chạy ứng dụng trên OpenShift

  4. Ngày và giờ theo giờ UTC - làm cách nào để lưu trữ chúng trong bưu điện?

  5. Hibernate @Filter collection of enums