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

Postgres:lọc kết quả bằng ARRAY_AGG và HAVING (thay vì WHERE)

Hóa ra rằng BẤT KỲ từ khóa nào của Postgres là một mặt và không thể được sử dụng đối xứng.

Do đó, mã làm việc là:

SELECT items.id, items.title, ARRAY_AGG(tags.tag_id)
FROM items
INNER JOIN tags ON (tag.tag_id=items.id)
GROUP BY items.id
HAVING 27 = ANY(ARRAY_AGG(tags.tag_id))



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Câu lệnh PostgreSQL IF

  2. Truy vấn không trả về gì từ cơ sở dữ liệu

  3. Cách tạo cột cho các trường khác nhau mà không cần áp dụng chức năng xoay vòng

  4. PostgreSQL - LỖI:không thể chuyển ngày cột thành ngày nhập

  5. Đếm số phần tử chồng chéo trong mảng Postgres