PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

SQL postgres agregasi/poros data berdasarkan minggu dengan total

Di sini Anda dapat menemukan cara mengekstrak nomor minggu . Kemudian gunakan nomor Minggu dalam pernyataan KASUS

Demo SQLFiddle

WITH T AS
(
SELECT
EventLogs.*
,
extract(week from start_at) - 
extract(week from date_trunc('month', start_at)) + 1 as WeekNo


 FROM EventLogs  
WHERE (start_at BETWEEN '2013-10-01' AND '2013-10-31')
)

SELECT
place_id,
SUM(CASE WHEN WeekNo=1 THEN total_fee_pennies ELSE 0 END) as Week_1,
SUM(CASE WHEN WeekNo=2 THEN total_fee_pennies ELSE 0 END) as Week_2,
SUM(CASE WHEN WeekNo=3 THEN total_fee_pennies ELSE 0 END) as Week_3,
SUM(CASE WHEN WeekNo=4 THEN total_fee_pennies ELSE 0 END) as Week_4,
SUM(CASE WHEN WeekNo=5 THEN total_fee_pennies ELSE 0 END) as Week_5

from T

GROUP BY place_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. Fungsi PostgreSQL yang ditentukan pengguna dalam dialek hibernasi melempar pengecualian

  2. Mengapa fungsi postgres trigram word_similarity tidak menggunakan indeks gin?

  3. Kueri SELECT rekursif untuk mengembalikan tingkat kedalaman sewenang-wenang?

  4. Pemulihan cadangan PostgreSQL dan TimescaleDB menggunakan ClusterControl CLI

  5. PostgreSQL - batasi ukuran log total