假設我有這樣的 sql 表:
id | val_1 | val_2
1 | 55 | 300
2 | 90 | 600
3 | 80 | 200
..
現在,我不想減去 300-90,然后減去 600-80 等等,并以一行的偏移量減去。表可以是這樣的奇數。有沒有機會在沒有回圈和外部函式的情況下做到這一點?我將 Python api 用于 sqlite3。
提前致謝!
uj5u.com熱心網友回復:
根據您想要的輸出,您可以使用LEAD()
視窗函式:
SELECT *,
val_2 - LEAD(val_1, 1, 0) OVER (ORDER BY id) AS difference
FROM tablename;
或LAG()
視窗函式:
SELECT *,
LAG(val_2, 1, 0) OVER (ORDER BY id) - val_1 AS difference
FROM tablename;
請參閱演示。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/388122.html