zoukankan      html  css  js  c++  java
  • 07 MySQL常用内置函数

    常用函数
        1.字符串函数
            CONCAT(str1,str2,..,strN)
                将str1,str2..strN 拼接成一个字符串,当这里有任何一个为NULL,则拼接结果为NULL
     
            INSERT(str, idx,len,tarStr)
                将字符串str从 idx 位置开始,len个字符长度的子串替换为字符串tarStr.
     
            LOWER(str) / UPPER(str)
     
            LEFT( str , len ) / RIGHT( str , len )
                返回 str 最左/右边的 len 个字符
     
            LPAD( str , len , fill_str ) / RPAD( str , len , fill_str )
                使用字符串 fill_str 对str最左/右边进行填充,直到长度为 len 个字符长度.
     
            LTRIM(str) / RTRIM(str) / TRIM(str)
                去掉字符串str 最左侧的空格 / 最右侧的空格 / 两侧的空格
     
            REPEAT(str, count)
                返回 str 重复 count 次的结果
     
            REPLACE( str, src_str ,tar_str )
                用字符串 tar_str 替换 所有 出现在 str 中的字符串 src_str ;
     
            STRCMP(s1,s2)
                比较字符串s1和s2的ASCII的大小.
                s1<s2 则返回-1 ; s1>s2 返回1 ; s1=s2 返回0.
     
            SUBSTRING( str , idx , len )
                返回字符串 str 从第 idx 索引处开始 长度为 len 的字符串.
     
        2.数值函数
            ABS(x)
                返回x的绝对值
     
            CEIL(x)
                返回大于x的最大整数值
     
            FLOOR(x)
                返回小于x的最大整数值
     
            MOD(x,y)
                相当于 x%y
            
            RAND()
                返回0~1之间的随机数
     
            ROUND(x,y)
                返回 x 四舍五入后有y位小数的值
     
            TRUNCATE(x,y)
                返回 x 截断 为y位小数的结果;
     
            ROUND() 和 TRUNCATE() 区别是 前者会进行四舍五入,后者只是截断,而不会四舍五入.
     
     
        3.日期/时间 函数
            CURDATE()
                返回当前日期,只包含年月日yyyy-MM-dd
     
            CURTIME()
                返回当前时间,只包含时分秒hh:mm:ss
     
            NOW()
                返回当前日期+时间.yyyy-MM-dd hh:mm:ss
     
            UNIX_TIMESTAMP(date)
                返回日期date的UNIX时间戳
     
            FROM_UNIXTIME(unixtime)
                返回UNIXTIME时间戳的日期值.与UNIX_TIMESTAMP(date)函数互为逆操作.
            
            WEEK(date)
                返回一年中的第几周
     
            YEAR(date)
                返回所给日期是哪年
     
            HOUR(time)
                返回所给时间的小时
     
            MINUTE(time)
                返回所给时间的分钟
     
            MONTHNAME(date)
                返回所给date相对应的月份的英文名称,如July.
     
            DATE_FORMAT(date,fmt)
                返回按字符串fmt格式化日期date值.
     
                fmt可用到的格式符号:
                    %S,%s    两位数字形式的秒
                    %i    两位数字形式的分
                    %H    两位数字形式的小时,24小时制
                    %h,%I    两位数字形式的小事,12小时制 todo
                    %k    数字形式的小时,24小时制.不满10的,不补0
          %l    数字形式的小时,12小时制.不满10的,不补0 todo
          %T    24小时制的时间形式 hh:mm:ss
          %r    12小时制的时间形式 hh:mm:ssAM 或 hh:mm:ssPM
          %p    AM 或PM
          %W    一周中每一天的英文名称(如Sunday,Monday)
          %a    一周中没一台呢的英文名称的缩写(如Sun,Mon)
          %d    两位数字表示月中的天数
          %e    数字形式表示月中的天数
          %D    英文后缀表示月中的天数(1st,2nd,3rd)
          %w    以数字形式表示周中的天数(0=Sunday,1=Monday...)
          %j    以3位数字表示年中的天数
          %U    周(0,1,52) , Sunday为周的第一天
          %u    周(0,1,52) , Monday为周的第一天
          %M    月的英文名(January,February..)
          %b    月的英文名缩写(Jan,Feb,Dec...)
          %m    两位数字表示的月份
          %c    数字表示的月份
          %Y    4位数字表示的年份
          %y    两位数字表示的年份
          %%    直接值"%"
     
            DATE_ADD(date,INTERVAL expr type)
                其中,INTERVAL是关键字,expr是表达式,type是间隔类型.
     
     MySQL的13种间隔(INTERVAL)类型
                HOUR               小时        hh
                MINUTE            分        mm
                SECOND           秒        ss
                YEAR                 年        YY
                MONTH             月        MM
                DAY            日        DD
                YEAR_MONTH        年月        YY-MM
                DAY_HOUR        日和小时    DD hh
                DAY_MINUTE        日和分钟    DD hh:mm
                DAY_SECOND        日和秒        DD hh:mm:ss
                HOUR_MINUTE        小时和分    hh:mm
                HOUR_SECOND        小时和秒    hh:ss
                MINUTE_SECOND        分钟和秒    mm:ss
     
    demo : SELECT DATE_ADD( now() , INTERVAL -31 DAY) AS before31days ;
     
            DATEDIFF(date1,date2)
                计算两个日期中间相差多少天 todo 验证是否和两个参数的顺序相关
     
     
        
        4.流程函数
            DATABASE()
                返回当前数据库名
        
            VERSION()
                返回当前数据库版本
        
            USER()
                返回当前登录用户名
     
            INET_ATON(IP)
                返回IP地址的数字表示,多用于IP大小的比较
        
            INET_NTOA(num)
                返回数字代表的IP地址.不要用这种方式比较大小
     
            PASSWORD(str)
                返回字符串str的加密版本.返回的字符串长度为41.
                只用于对系统用户的密码进行加密,不要用于数据的加密
        
            MD5(str)
                返回字符串str的MD5值.对数据进行加密.
     
  • 相关阅读:
    pip install
    自动更新高清电影文件中文名
    csv、excel导入oracle
    02_Jenkins配置任务
    01_Jenkins windows安装
    run_jmeter.py
    02_禅道的基本使用
    01_禅道搭建手册
    01_charles 下载安装(破解版)
    06_Linux常见的命令
  • 原文地址:https://www.cnblogs.com/lmxxlm-123/p/11131956.html
Copyright © 2011-2022 走看看