我想替换wordpress数据库中的整个MySQL字段。我想在自定义字段'employee'
中将'Mark'替换为'Tom'我有以下工作查询:
UPDATE 'wp_postmeta'
SET 'meta_value' = replace(meta_value, 'Mark', 'Tom')
WHERE 'meta_key' LIKE 'employee'
我遇到的问题是我不想替换'Mark Frey'( - > Tom Frey)或'Markus'( - > Tomus)中的'Mark'。 我只想替换整个字段,而不是它的一部分。结果应如下所示:
马克 - >汤姆
Mark Frey - >马克弗雷
马库斯 - >马库斯
是否可以在phpmyadmin中执行此操作?
答案 0 :(得分:0)
您可以在WHERE
子句中添加一个条件,检查meta_value
字段是否与您要替换的内容完全相等,在本例中为'Mark'
:
UPDATE wp_postmeta
SET meta_value = REPLACE(meta_value, 'Mark', 'Tom')
WHERE meta_key LIKE 'employee' AND
meta_value = 'Mark'
请注意,我删除了包含表和字段名称的单引号,因为它们不属于那里,至少不属于原始MySQL查询。
<强>更新强>
正如@HankyPanky指出的那样,你也可以直接更新meta_value
:
UPDATE wp_postmeta
SET meta_value = 'Tom'
WHERE meta_key LIKE 'employee' AND
meta_value = 'Mark'