mysql技能大全
1.将【user】表中“用户名”字段值相同的记录加序号以保证“用户名”字段取值唯一性
前提条件:【user】表中必须包含“id”字段且作为数字主键。
语句如下:
UPDATE user_debug INNER JOIN (SELECT n1.id, n1.用户名, count(n2.id)+1 cnt FROM user_debug n1 INNER JOIN user_debug n2 ON n1.用户名=n2.用户名 AND n1.id>n2.id GROUP BY n1.id, n1.用户名) s ON user_debug.id = s.id SET user_debug.用户名 = CONCAT(user_debug.用户名,s.cnt)
2.sql获取最近7天的日期
SELECT DATE_FORMAT( date_add( DATE_FORMAT( DATE_SUB( NOW( ), INTERVAL 1 DAY ), '%Y-%m-%d' ), INTERVAL @j := @j + 1 DAY ), '%Y-%m-%d' ) AS mydate FROM ( SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 ) tmp, ( SELECT @j := 0 ) t
执行结果如下图所示: