mysql 使用sql select在列中添加两个连续的值

ozxc1zmp  于 2023-08-02  发布在  Mysql
关注(0)|答案(2)|浏览(122)


的数据
如果我有上面的'Table_A',是否可以只使用select sql从它生成Table_B?我想保留列“pc2”并创建列“pc4”,以将连续行中的“pc3”值和“pc1”值相加。

axzmvihb

axzmvihb1#

使用LEAD()窗口函数获取每行pc1的下一个值:

SELECT day, 
       pc2,
       pc3 + LEAD(pc1, 1, 0) OVER (ORDER BY day) AS pc4
FROM Table_A;

字符串
如果要创建新表Table_B

CREATE TABLE Table_B AS
SELECT day, 
       pc2,
       pc3 + LEAD(pc1, 1, 0) OVER (ORDER BY day) AS pc4
FROM Table_A;

j1dl9f46

j1dl9f462#

您可以尝试使用以下SQL

SELECT a.day,a.pc1,(a.pc3+b.pc2) AS pc4
FROM TABLE_A AS a. TABLE_A AS b
WHERE a.day=(b.day+1)
ORDER BY a.day

字符串

相关问题