【发布时间】:2020-07-26 06:17:25
【问题描述】:
我正在尝试使用 PostgreSQL 的行号来查找百分比变化,但我遇到了一个错误,我的“percent_change”列显示为 0。
这是我的代码。
WITH CTE AS (
SELECT date, sales, ROW_NUMBER() OVER (ORDER by date) AS rn
FROM sales_2019)
SELECT c1.date, c1.sales,
CAST(COALESCE (((c1.sales - c2.sales) * 1.0 / c2.sales) * 100, 0) AS INT) AS percent_change
FROM CTE AS c1
LEFT JOIN CTE AS c2
ON c1.date = c2.date AND c1.rn = c2.rn + 1
这是我的SQL table,以备不时之需。提前谢谢你,非常感谢。
【问题讨论】:
-
你期待什么输出?
-
我期待的输出是这样的:pastebin.com/42RwSxkP
-
你可以查看答案
-
您正在将值转换为整数。预计会发生什么?
标签: sql postgresql window-functions