如何使用MySQL以简单的增量更新VARCHAR值?

时间:2014-11-18 15:50:51

标签: php mysql wordpress

为了清理WordPress数据库,我目前正尝试使用简单的递增值更新post_name VARCHAR字段。

在测试了@gmoliv给出的specific solution之后(我希望根据选定的行选择简单的数字),我尝试调整@gianluca给出的this trick ie

SET @rownum:=0;
UPDATE wp_posts
SET post_name = @rownum:=rownum+1
WHERE post_status="publish" AND post_type="post"
ORDER BY post_date

不幸的是,我收到错误#1054未知列' rownum'在'字段列表'

如果有人能在这个问题上给我启发,谢谢。

1 个答案:

答案 0 :(得分:0)

您在UPDATE查询中使用MySQL变量作为列名。

在:

SET @rownum:=0;
UPDATE wp_posts
SET post_name = @rownum:=rownum+1
WHERE post_status="publish" AND post_type="post"
ORDER BY post_date

之后(见第3行):

SET @rownum:=0;
UPDATE wp_posts
SET post_name = @rownum:=@rownum+1
WHERE post_status="publish" AND post_type="post"
ORDER BY post_date