PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

как да накарам тази заявка също да връща редове с 0 стойност на броя?

        -- CTE to the rescue!!!
WITH cal AS (
        SELECT generate_series('2012-02-02 00:00:00'::timestamp , '2012-03-02 05:00:00'::timestamp , '1 hour'::interval) AS stamp
        )
, qqq AS (
        SELECT date_trunc('hour', executiontime) AS stamp
        , count(*) AS zcount
        FROM mytable
        GROUP BY date_trunc('hour', executiontime)
        )
SELECT cal.stamp
        , COALESCE (qqq.zcount, 0) AS zcount
FROM cal
LEFT JOIN qqq ON cal.stamp = qqq.stamp
ORDER BY stamp ASC
        ;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. postgresql - заявка за изграждане на json

  2. Как да импортирате *огромни* части от данни в PostgreSQL?

  3. UTF-8 / Unicode кодиране на текст с RPostgreSQL

  4. Върнете същия резултат, когато се опитвате да намерите различни данни

  5. Как да се предпазим от SQL инжектиране, когато клаузата WHERE се изгражда динамично от формуляра за търсене?