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

PostgreSQL:tồn tại so với tham gia bên trái

Vâng, đối với mỗi hàng trong "nhóm", postgresql đang quét toàn bộ sản phẩm_categories, điều này không tốt. Không nhất thiết là vấn đề cấu hình, nhưng có lẽ truy vấn có thể được nêu mà không cần lồng các truy vấn con như vậy?

SELECT count(DISTINCT "groups".id) AS count_all 
FROM "groups"
WHERE exists(
    select 1 from products p where groups.id = p.group_id
             join products_categories pc on pc.product_id = p.id
    where pc.category_id in (2,3)
    ) and groups.id <> 3

products_categories cũng vậy có chỉ mục trên product_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. Làm cách nào để xử lý dữ liệu được xếp hạng x / y trong PostgreSQL?

  2. Thêm bảng người dùng / tài khoản vào Postgres trong Chế độ xem Django

  3. Làm cách nào để biết Autovacuum của PostgreSQL đang chạy trên UNIX?

  4. CTE xóa không được cam kết cho đến khi các câu lệnh sau hoàn thành

  5. Django + Postgres:giao dịch hiện tại bị hủy bỏ, các lệnh bị bỏ qua cho đến khi kết thúc khối giao dịch