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



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

有点很难举例说明我的意思,我处理的表非常大而复杂,但基本上表foobar通过相关foo.order_id bar.order_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

相关内容

最新更新