数据库中的八大函数(聚合,数字,字符串,日期和时间,条件,系统信息,加密,格式化)

一.函数
    1.聚合函数
        sum() avg() count() min() max()
    2.数学函数
        主要用于处理数字 包括整型 浮点型
        /*数学函数*/
        SELECT FLOOR(1.5)/*返回小于或者等于参数的最大整数*/floor向下取整
        SELECT RAND()/*返回0-1的随机数*/
        SELECT ROUND(RAND()*10)/*返回离round(x) x最近的整数 小数点后四舍五入*/
        SELECT ROUND(1.23456,3);/*round(x,y) 保留x小数点后y位 但截取时 会进行四舍五入*/
    3.字符串函数
        最常用的一类函数 主要用于处理表中的字符串
        /*字符串函数*/
        /*lower小写 upper大写*/
        SELECT LOWER(ename) FROM emp;
        SELECT UPPER(ename) FROM emp;
        /*返回字符串的长度 length(x)
        获取 emp表中 名字长度为5的所有员工*/
        SELECT * FROM emp WHERE LENGTH(ename)=5
        /*将多个字符串 合并为一个字符串*/
        SELECT CONCAT("abc","123456")
        /*替换 replace(str,search_str,replace_str) 在str中 将search_str 替换为replace_str */
        SELECT REPLACE("hello java 1801 ok","java","千锋");
        /*截取 substring(str,position,length) 从str字符串中position开始 取length个字符 默认索引从1开始*/
        SELECT SUBSTRING("hello java",1,2);
        /*去空格 ltrim(str) rtrim(str)*/
        SELECT LTRIM("    3018年")//去左空格
        SELECT RTRIM("    3018年         ")//去有空格
        SELECT LTRIM(RTRIM("    3018年         "))
    4.日期和时间函数
        /*日期和时间函数*/
        SELECT CURDATE()/*返回当前日期*/
        SELECT CURTIME()/*返回当前时间*/
        SELECT NOW()/*返回当前日期和时间*/
        SELECT MONTH("2011-11-2")
        SELECT YEAR(NOW())
        /*返回日期当中的月份的英文名*/
        SELECT MONTHNAME(NOW())
        /*返回日期星期几 英文*/
        SELECT DAYNAME(NOW())
        /*返回一周的第几天 星期日开始*/
        SELECT DAYOFWEEK(NOW())
        /*日期是本年的第几个星期 */
        SELECT WEEK(NOW())
        /*返回小时*/
        SELECT HOUR(NOW())
        /*返回分钟*/
        SELECT MINUTE(NOW())
        /*返回 秒*/
        SELECT SECOND(NOW())
        /*获取入职时间在30年以上的员工信息*/
        SELECT * FROM emp WHERE (YEAR(NOW())-YEAR(hiredate))>=30
        /*获取7369的年龄*/
        SELECT DATEDIFF("1981-1-17","1980-12-17");
        SELECT DATEDIFF(NOW(),emp.hiredate)/365 FROM emp WHERE empno=7369
    5.条件函数
        ifnull(x,y)
        如果x的值为null 就用y的值替换

        if(expr,x,y)
        如果表达式expr成立 则返回结果x 否则返回y
        SELECT IF(1>0,"正确","错误")
    6.系统信息函数
        ip地址相互转换 /*将给定的ip地址转成数字*/

就是QQ异地登录,它会记录你经常登录的地址,如果你换电脑(IP不同)会提示
        SELECT INET_ATON("127.0.0.1")
        /*将给定数字转成ip地址*/
        SELECT INET_NTOA(2130706433)
    7.加密函数
        mysql对数据进行加密的函数
        password(str)
            可以对字符串str 进行加密 一般用于给用户的密码进行加密
        md5(str)
            可以对字符串进行散列
            可以用于一些不需要解密的数据

            SELECT PASSWORD("123")//加密
            SELECT MD5("123")//解密
    8.格式化函数
        format 函数在mysql中对数据内容进行格式化
        SELECT FORMAT(100000,2);
        SELECT FORMAT(100.31111,2);
        SELECT FORMAT(100.31111,0);
        SELECT FORMAT(432432234.65534453,2);
        /*可以格式化数据为整数 或者浮点数 具有四舍五入的功能*/

posted on 2018-08-16 15:17  花伶  阅读(689)  评论(0编辑  收藏  举报

导航