连续行比较
在本教程中,我们将介绍如何使用自连接技术来比较同一个表中的连续行。
假设您有一个名为inventory
的表,其中包含由CREATE TABLE语句定义的结构,如下所示:
在库存(inventory
)表中:
id
是自动增量列。count_date
是计数日期。item_no
是发布到广告资源的商品代码。qty
是库存中累计的现货数量。
以下是inventory
表的示例数据:
如果想知道每个物品每天收到的物品数量,需要将特定日期的现有数量与前一天进行比较。
换句话说,在inventory
表中,需要将一行与其连续行进行比较以找出差异。
在MySQL中,可以使用自连接技术来比较连续的行,如以下查询:
执行上面查询语句,得到以下结果 -
INNER JOIN子句g2.id = g1.id + 1
中的条件允许您将当前行与inventory
表中的下一行进行比较,当然,假设id
列中没有间隙。
如果无法避免差距,您可以创建一个附加列,例如seq
来维护行的顺序,以便应用此技术。
在本教程中,您已经学会了如何使用自连接技术来比较同一个表中的连续行。
Last updated