记录一些常用的函数和瞎折腾的过程……

常用的几个MySQL语句

提醒:本文最后更新于 1488 天前,文中所描述的信息可能已发生改变,请谨慎使用。

没事折腾数据库的时候,经常用到几个Mysql语句,现记录下来,方便以后查用:

1、字符串替换:

UPDATE `表名` SET `字段名` = replace( 字段名, '替换前的字符串','替换后的字符串' );

例如将wordpres中wp_posts这个表中的普通链接地址换成SSL的链接地址,可这样用:

UPDATE `wp_posts` SET `guid` = replace( guid, 'http://www.psay.cn','https://www.psay.cn' );

2、数据更新:

update `表名` set `字段名`='更新内容' where `条件字段名`='条件内容';

如在wordpress中,将表wp_comments中的email为test@psay.cn的值更新为good@psay.cn,可以这样用:

update `wp_comments` set `comment_author_email`='good@psay.cn' where `comment_author_email`='test@psay.cn';

对于某些数值,若要大批量加减,可以这样进行数据加减的更新:

update `表名` set `字段名` = `字段名` - 数值 where `条件字段名` = 条件数值;

如在wordpress中,将表wp_comments的comment_id值大于100的都减去5:

update `wp_comments` set `comment_id` = `comment_id` - 5 where `comment_id` > 100;

3、时间更新:

update `表名` set `字段名` = DATE_SUB(字段名,时间值);

如在wordpress中,将表wp_posts中的字段comment_date_gmt时间都减少8个小时,可以这样用:

update `wp_posts`  set `comment_date_gmt` = DATE_SUB(comment_date_gmt,INTERVAL 8 HOUR);

4、让表中的自增字段重新从1开始计数:

ALTER TABLE `表名` AUTO_INCREMENT = 1;

如在wordpress中,将wp_posts表中的id值重新从1开始自增加:

ALTER TABLE `wp_posts` AUTO_INCREMENT = 1;

5、把一个表中的字段的值赋值到另一个字段,如表table_A中2个字段a和b,现将a的值复制给b:

update `able_A` set b = a;