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
复制代码

执行结果如下图所示:

 

posted @   Franson  阅读(10)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示