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

Nhận giá trị trường từ bản ghi khiến điều kiện tổng hợp là đúng

with agg as (
    select a, min(d) as d
    from x
    group by a
    having 1 = any(array_agg(b))
)
select distinct on (a, c)
    a, c, d
from
    x
    inner join
    agg using (a, d)
order by a, c

If min(d) không phải là duy nhất trong a thì có thể tồn tại nhiều hơn một c tương ứng . Ở trên sẽ trả về c nhỏ nhất. Nếu bạn muốn việc lớn nhất thay vào đó

order by a, c desc


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. postgres chỉ sử dụng chỉ mục được sắp xếp để truy vấn bảng bản ghi 5m

  2. CONSTRAINT để kiểm tra các giá trị từ một bảng có liên quan từ xa (thông qua phép nối, v.v.)

  3. Chọn trung bình các bản ghi được nhóm theo khoảng thời gian 5 phút

  4. Lập chỉ mục SQL trên varchar

  5. Tạo một hàm trong Postgresql không trả về giá trị tổng hợp