我正在尝试将表格post_title
中的wp_posts
字段复制到表格meta_value
中的wp_postmeta
字段中。这些是wordpress tabkes。
UPDATE wp_postmeta
SET wp_postmeta.meta_value = wp_posts.post_title
FROM wp_posts,wp_postmeta
WHERE wp_posts.ID = wp_postmeta.post_id
AND wp_postmeta.meta_key LIKE '%_yoast_wpseo_focuskw'
出现此错误:
#1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以获得正确的语法 'FROM wp_posts附近,wp_postmeta WHERE wp_posts.ID = wp_postmeta.post_id和第3行的wp_pos'
我哪里错了?
答案 0 :(得分:0)
试试这个
UPDATE wp_postmeta m INNER JOIN
wp_posts p ON p.ID = m.post_id
SET m.meta_value = p.post_title
WHERE m.meta_key LIKE '%_yoast_wpseo_focuskw'
答案 1 :(得分:0)
你有一个表名的UPDATE,然后有一个FROM子句做同样的事情。要么在UPDATE子句中组合所需的表,要么需要SELECT用于子查询。
在任何情况下,FROM语法都不正确。您可以使用Google for SQL语法或特定于MySQL的SQL语法,这可能会帮助您了解MySQL的合法SQL。
答案 2 :(得分:0)
更新wp_postmeta SET wp_postmeta.meta_value = wp_posts.post_title 来自wp_posts 内部加入wp_postmeta wp_posts.ID = wp_postmeta.post_id AND wp_postmeta.meta_key LIKE'%_yoast_wpseo_focuskw'