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

Truy xuất số lượng hàng và trả về 0 khi không có hàng

Giả sử được tạo thuộc loại date vì thiếu thông tin.

Postgres cung cấp generate_series () để làm cho việc này trở nên dễ dàng:

SELECT d.created, COUNT(s.id) AS ct
FROM  (
   SELECT generate_series(min(created)
                        , max(created), interval '1 day')::date AS created
   FROM   signups
   ) d
LEFT   JOIN signups s USING (created)
GROUP  BY 1
ORDER  BY 1 DESC;

Điều này tự động truy xuất ngày tối thiểu và tối đa từ bảng của bạn và cung cấp một hàng mỗi ngày ở giữa.



  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_dump cơ sở dữ liệu postgres từ máy chủ từ xa khi cổng 5432 bị chặn

  2. Định cấu hình PostgreSQL cho sự liên tục trong kinh doanh

  3. Tôi không thể kết nối với Postgres DB bằng Strapi trên Heroku

  4. Chèn dữ liệu vào 3 bảng cùng một lúc bằng Postgres

  5. So sánh kết quả của hai hàm bảng bằng cách sử dụng một cột từ mỗi