在Mysql中
表
Id AA BBB
A 45 123
B 52 120
C 40 135
我将如何获得
B_A 7
A_C 5
首先需要按BBB Asc排序 然后减去52-45。 B_A连接B和A
如何在SQL中添加/减去前一行的形式?
如果我需要为B分开cols然后A,我将如何添加此项。
答案 0 :(得分:2)
SELECT concat(t1.id , '_', t2.id, ' ', t1.aa - t2.aa )
FROM table t1
INNER JOIN (SELECT Max(t2.id) prev_id,
t1.id
FROM table t1
INNER JOIN table t2
ON t1.id > t2.id
GROUP BY t1.id) prev
ON t1.id = prev.id
INNER JOIN table t2
ON t2.id = prev.prev_id