PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Pobieranie liczby wierszy i zwracanie 0, gdy nie ma wierszy

Zakładając, że utworzono być typu data z powodu braku informacji.

Postgres zapewnia wspaniały generate_series() aby to ułatwić:

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;

To automatycznie pobiera minimalny i maksymalny dzień z tabeli i zapewnia jeden wiersz dziennie pomiędzy.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Synchronizuj dane postgreSql z ElasticSearch

  2. Użyj czegoś takiego jak TOP z GROUP BY

  3. Czy nazwy funkcji w PostgreSQL są niewrażliwe na wielkość liter?

  4. HQL — Sprawdź, czy tablica zawiera wartość

  5. Docker Compose + Postgres:Ekspozycja portu