- WITH
- t_12 AS (SELECT EXTRACT(MONTH FROM CAST(invoice_date AS date)) AS month,
- SUM(total) AS sum_total_2012
- FROM invoice
- WHERE EXTRACT(YEAR FROM CAST(invoice_date AS timestamp)) = 2012
- GROUP BY month),
- t_13 AS (SELECT EXTRACT(MONTH FROM CAST(invoice_date AS date)) AS month,
- SUM(total) AS sum_total_2013
- FROM invoice
- WHERE EXTRACT(YEAR FROM CAST(invoice_date AS timestamp)) = 2013
- GROUP BY month)
- SELECT t_12.month,
- sum_total_2012,
- sum_total_2013,
- ROUND((sum_total_2013 - sum_total_2012)/sum_total_2013*100) AS perc
- FROM t_12 LEFT JOIN t_13 ON t_12.month=t_13.month
- ORDER BY perc;