繁体   English   中英

MySQL单元格的默认值为上一行的值

[英]Defaulting value of MySQL cell to the value in the previous row

我想知道是否可以通过SELECT查询将某些列中的值默认为上一行中该列中的值。

有点难以说明我的意思,我正在处理的表很大而且很复杂,但是基本上,表foobar通过foo.order_idbar.order_id ,然后有一个bar.box_id包含框,并在两个框上进行左外部 bar.box_id将为bar.box_id拉一些NULL值,所以我想基本上将那个单元格中的值默认为先前的bar.box_id

谢谢!

子查询列

听起来您的问题不太复杂,无法提供简单的示例架构和所需的结果集。 也就是说,在对您实际要执行的操作进行了几次假设(信息不足)之后,您将不得不修复数据或运行性能很差的子查询。

SELECT
    order_id,
    (
        SELECT bar.box_id
        FROM bar
        WHERE foo.order_id <= bar.order_id
        ORDER BY bar.box_id DESC
        LIMIT 1
    ) as box_id

FROM foo

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM