我有以下資料:
| ID | 日期 | 全部的 |
|---|---|---|
| 一種 | 2021-09-03 | 0 |
| 一種 | 2021-09-04 | 12 |
| 一種 | 2021-09-05 | 37 |
| 一種 | 2021-09-06 | 40 |
| 乙 | 2021-08-03 | 20 |
| 乙 | 2021-08-04 | 43 |
| 乙 | 2021-08-05 | 75 |
從這些資料中,我想得到下表:
| ID | 日期 | 全部的 | 日常的 |
|---|---|---|---|
| 一種 | 2021-09-03 | 0 | 0 |
| 一種 | 2021-09-04 | 12 | 12 |
| 一種 | 2021-09-05 | 37 | 25 |
| 一種 | 2021-09-06 | 40 | 3 |
| 乙 | 2021-08-03 | 20 | 20 |
| 乙 | 2021-08-04 | 43 | 23 |
| 乙 | 2021-08-05 | 75 | 32 |
我嘗試了以下代碼,但我得到了很多重復的代碼:
CREATE TABLE table_b AS (
SELECT a.ID, a.Date, a.Total,
a.Total - coalesce(b.Total, 0) AS Daily
FROM table_a a left outer JOIN table_a b
ON (a.ID = b.ID AND b.Date < a.Date));
提前致謝:)
uj5u.com熱心網友回復:
SELECT *,
Total - COALESCE(LAG(Total) OVER (PARTITION BY id ORDER BY `date`), 0) Daily
FROM src_table
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/330807.html
