常用的几个MySQL语句
没事折腾数据库的时候,经常用到几个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;