gpt4 book ai didi

mysql - 不为空时更新字段

转载 作者:IT老高 更新时间:2023-10-29 00:09:03 32 4
gpt4 key购买 nike

我有一个更新语句,用于更新字段 x、y 和 z,其中 id = xx。

在表中我有几个不同的 x_created_datetime 字段(用于由不同的人维护/输入的记录的不同部分)。我想编写一个查询,如果该字段为空则更新此字段,但如果不为空则不理会它。

所以我有:

UPDATE newspapers
SET scan_notes = "data",
scan_entered_by = "some_name",
scan_modified_date = "current_unix_timestamp"
WHERE id = X

我需要的是一种添加以下内容,但仍然始终更新以上内容的方法:

scan_created_date = "current_unix_timestamp"
where scan_created_date is null

我希望我可以在不与数据库进行第二次交易的情况下做到这一点。关于如何实现这一目标的任何想法?

最佳答案

这样做:

UPDATE newspapers
SET scan_notes = "data",
scan_entered_by = "some_name",
scan_modified_date = "current_unix_timestamp",
scan_created_date = COALESCE(scan_created_date, "current_unix_timestamp")
WHERE id = X

COALESCE 函数选择第一个非空值。在这种情况下,它会将日期戳 scan_created_date 更新为相同的值(如果存在),否则它将采用您替换 "current_unix_timestamp" 的任何内容。

关于mysql - 不为空时更新字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1860216/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com