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

GROUP BY trong Postgres - không bình đẳng cho kiểu dữ liệu JSON?

Ngắn hơn, nhanh hơn và thanh lịch hơn với LATERAL tham gia:

SELECT DISTINCT ON (t.team->>'Name') t.team
FROM   matches m, json_array_elements(m.match->'Teams') t(team);
ORDER  BY t.team->>'Name', m.id DESC;  -- to get the "last"

Nếu bạn chỉ muốn các đội riêng biệt, hãy ORDER BY có thể đi. Có liên quan:

  • Truy vấn cho phần tử của mảng trong cột JSON
  • Truy vấn các phần tử mảng bên trong kiểu JSON

JSON và bình đẳng

Không có toán tử bình đẳng cho json kiểu dữ liệu trong Postgres, nhưng có một kiểu cho jsonb (Postgres 9.4+):

  • Làm cách nào để truy vấn cột json cho các đối tượng trống?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để truyền một chuỗi thành số nguyên và có 0 trong trường hợp truyền lỗi với PostgreSQL?

  2. Đối số dòng lệnh PSQL trong tập lệnh DO

  3. LỖI:cột quan hệ không tồn tại PostgreSQL, Không thể chạy truy vấn chèn

  4. Không có hàm nào phù hợp với các loại đối số và tên đã cho

  5. Nhận khóa chính không xác định cho bảng trong khi ID ở đó