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

Tham gia theo chuỗi không lọc như mong đợi

Nhận ra rằng tôi cần một lựa chọn phụ như thế này:

SELECT 
  UPPER(TO_CHAR(d.start_date, 'mon')) AS month,
  EXTRACT(MONTH FROM d.start_date) AS month_num,
  SUM(t.cost_planned) FILTER (WHERE t.aasm_state IN ('open', 'planned' ) ) AS planned,
  SUM(t.cost_actual)  FILTER (WHERE t.aasm_state = 'closed') AS actual
FROM GENERATE_SERIES('2020-01-01'::date, '2020-12-01'::date, '1 month') d(start_date)
LEFT JOIN
(
SELECT t.*
FROM activity_tasks t
LEFT JOIN activities a
ON a.id = t.activity_id
WHERE a.type = 'My Type'
) AS t ON t.start_date >= d.start_date and t.start_date < d.start_date + '1 month'::interval
GROUP BY d.start_date
ORDER BY d.start_date



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PG ::ConnectionBad:fe_sendauth:không cung cấp mật khẩu

  2. Làm cách nào để trả về các hàng kết quả truy vấn trong hàm PostgreSQL?

  3. Dung lượng bộ đệm trong PostgreSQL

  4. Truyền một Tập kết quả vào một Hàm Postgresql

  5. Postgresql:Không thể truy cập vào tệp «$ libdir / postgis-2.1» không có tệp hoặc thư mục như vậy