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

Sắp xếp các giá trị cột riêng biệt theo (giá trị đầu tiên của) cột khác trong hàm tổng hợp

Loại bỏ sự cần thiết phải thực hiện một sự khác biệt bằng cách tổng hợp trước

select string_agg(sometext, ' ' order by numval)
from (
    select sometext, min(numval) as numval
    from t
    group by sometext
) s

câu trả lời của @ Gordon đã mang lại một điểm tốt. Đó là nếu có các cột cần thiết khác. Trong trường hợp này, một distinct on được khuyến khích

select x, string_agg(sometext, ' ' order by numval)
from (
    select distinct on (sometext) *
    from t
    order by sometext, numval
) s
group by x


  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ính Tổng tổng của một trường được chú thích trên một nhóm theo truy vấn trong Django ORM?

  2. Một số lĩnh vực cải tiến trong PostgreSQL 9.4

  3. Lỗi PostGIS:Không thể chọn một chức năng ứng cử viên tốt nhất

  4. Đánh dấu các phạm vi ngày không liền kề

  5. Lưu trữ hình ảnh trong PostgreSQL