Mysql 更改与特定meta_键相关的meta_值
我有一个wordpress目录主题,其中一堆列表即将过期。这些都是在不同的日子创建的。我想批量更新整个数据库,以便从今天起,我的所有列表都将在下一年重置 它们与wp_postemta表相关,meta_键为“alive_days”,我需要更新相关的meta_值 如果有人能建议一个SQL查询来解决这个问题,我就不用再拔头发了 提前谢谢 LLGMysql 更改与特定meta_键相关的meta_值,mysql,sql,wordpress,phpmyadmin,Mysql,Sql,Wordpress,Phpmyadmin,我有一个wordpress目录主题,其中一堆列表即将过期。这些都是在不同的日子创建的。我想批量更新整个数据库,以便从今天起,我的所有列表都将在下一年重置 它们与wp_postemta表相关,meta_键为“alive_days”,我需要更新相关的meta_值 如果有人能建议一个SQL查询来解决这个问题,我就不用再拔头发了 提前谢谢 LLG 有关数据库的屏幕抓图,请参见。根据您对我的问题的回答,这应该可以做到(先备份数据库,以防万一): 现有的空白将被更新,但由于它们与不再存在的帖子相关,这不重要
有关数据库的屏幕抓图,请参见。根据您对我的问题的回答,这应该可以做到(先备份数据库,以防万一): 现有的空白将被更新,但由于它们与不再存在的帖子相关,这不重要。如果不想更新它们,可以添加一个额外的条件(我假设它们包含空字符串,而不是
null
,但是ifnull
应该处理这个问题):
那么您想用
live\u days
键更新每个元值吗?此时数据库中的值采用什么格式(屏幕抓取显示空值)?它们是日期(如果是,什么格式)>还是整数(如剩余天数)?对于过去不再存在的帖子,其中一些是空的。仍处于活动状态的帖子显示天数,例如“356”一年。我知道没有必要更新未使用的帖子,但是我不确定如何区分这两个帖子。谢谢Hobo.Hobo-谢谢你,在0.0091秒内我的头痛消失了:)我给你一个大大的拥抱!没问题。请随意接受我的答案(单击旁边的勾号)和/或向上投票。这就是我们在这里表达感谢的方式:)太棒了,谢谢。投票没有问题-接受更好:)
update wp_postmeta
set meta_value = '365' -- I assume you meant that, not 356
where meta_key = 'alive_days'
update wp_postmeta
set meta_value = '365'
where meta_key = 'alive_days'
and ifnull(meta_value, '') != ''