zoukankan      html  css  js  c++  java
  • MySQL函数

    一、数学函数   数学函数主要用于处理数字,包括整型、浮点数等。 ABS(x) 返回x的绝对值   SELECT ABS(-1) -- 返回1 CEIL(x),CEILING(x) 返回大于或等于x的最小整数   SELECT CEIL(1.5) -- 返回2 FLOOR(x) 返回小于或等于x的最大整数   SELECT FLOOR(1.5) -- 返回1 RAND() 返回0->1的随机数   SELECT RAND() --0.93099315644334 RAND(x) 返回0->1的随机数,x值相同时返回的随机数相同   SELECT RAND(2) --1.5865798029924 PI() 返回圆周率(3.141593)   SELECT PI() --3.141593 TRUNCATE(x,y) 返回数值x保留到小数点后y位的值(与ROUND最大的区别是不会进行四舍五入)   SELECT TRUNCATE(1.23456,3) -- 1.234 ROUND(x,y) 保留x小数点后y位的值,但截断时要进行四舍五入   SELECT ROUND(1.23456,3) -- 1.235 POW(x,y).POWER(x,y) 返回x的y次方   SELECT POW(2,3) -- 8 SQRT(x) 返回x的平方根   SELECT SQRT(25) -- 5 EXP(x) 返回e的x次方   SELECT EXP(3) -- 20.085536923188 MOD(x,y) 返回x除以y以后的余数   SELECT MOD(5,2) -- 1 二、字符串函数   字符串函数是MySQL中最常用的一类函数,字符串函数主要用于处理表中的字符串。 函数 说明 CHAR_LENGTH(s) 返回字符串s的字符数 SELECT CHAR_LENGTH('你好123') -- 5 CONCAT(s1,s2,...) 将字符串s1,s2等多个字符串合并为一个字符串 SELECT CONCAT('12','34') -- 1234 CONCAT_WS(x,s1,s2,...) 同CONCAT(s1,s2,...)函数,但是每个字符串直接要加上x SELECT CONCAT_WS('@','12','34') -- 12@34 INSERT(s1,x,len,s2) 将字符串s2替换s1的x位置开始长度为len的字符串 SELECT INSERT('12345',1,3,'abc') -- abc45 UPPER(s),UCAASE(S) 将字符串s的所有字母变成大写字母 SELECT UPPER('abc') -- ABC LOWER(s),LCASE(s) 将字符串s的所有字母变成小写字母 SELECT LOWER('ABC') -- abc LEFT(s,n) 返回字符串s的前n个字符 SELECT LEFT('abcde',2) -- ab RIGHT(s,n) 返回字符串s的后n个字符 SELECT RIGHT('abcde',2) -- de LTRIM(s) 去掉字符串s开始处的空格 RTRIM(s) 去掉字符串s结尾处的空格 TRIM(s) 去掉字符串s开始和结尾处的空格 SELECT TRIM('@' FROM '@@abc@@') -- abc REPEAT(s,n) 将字符串s重复n次 SELECT REPEAT('ab',3) -- ababab SPACE(n) 返回n个空格 REPLACE(s,s1,s2) 将字符串s2替代字符串s中的字符串s1 SELECT REPLACE('abca','a','x') --xbcx STRCMP(s1,s2) 比较字符串s1和s2 SUBSTRING(s,n,len) 获取从字符串s中的第n个位置开始长度为len的字符串 LOCATE(s1,s),POSITION(s1 IN s) 从字符串s中获取s1的开始位置 SELECT LOCATE('b', 'abc') -- 2 REVERSE(s) 将字符串s的顺序反过来 SELECT REVERSE('abc') -- cba FIELD(s,s1,s2...) 返回第一个与字符串s匹配的字符串位置 SELECT FIELD('c','a','b','c') -- 3 三、日期时间函数   MySQL的日期和时间函数主要用于处理日期时间。 函数 说明 CURDATE(),CURRENT_DATE() 返回当前日期 SELECT CURDATE() ->2014-12-17 CURTIME(),CURRENT_TIME 返回当前时间 SELECT CURTIME() ->15:59:02 NOW(),CURRENT_TIMESTAMP(),LOCALTIME(), SYSDATE(),LOCALTIMESTAMP() 返回当前日期和时间 SELECT NOW() ->2014-12-17 15:59:02 YEAR(d), MONTH(d) DAY(d) 返回日期d中的月份值,1->12 SELECT MONTH('2011-11-11 11:11:11') ->11 MONTHNAME(d) 返回日期当中的月份名称,如Janyary SELECT MONTHNAME('2011-11-11 11:11:11') ->November DAYNAME(d) 返回日期d是星期几,如Monday,Tuesday SELECT DAYNAME('2011-11-11 11:11:11') ->Friday DAYOFWEEK(d) 日期d今天是星期几,1星期日,2星期一 SELECT DAYOFWEEK('2011-11-11 11:11:11') ->6 WEEKDAY(d) 日期d今天是星期几, 0表示星期一,1表示星期二 WEEK(d),WEEKOFYEAR(d) 计算日期d是本年的第几个星期,范围是0->53 SELECT WEEK('2011-11-11 11:11:11') ->45 DAYOFYEAR(d) 计算日期d是本年的第几天 SELECT DAYOFYEAR('2011-11-11 11:11:11') ->315 DAYOFMONTH(d) 计算日期d是本月的第几天 SELECT DAYOFMONTH('2011-11-11 11:11:11') ->11 QUARTER(d) 返回日期d是第几季节,返回1->4 SELECT QUARTER('2011-11-11 11:11:11') ->4 HOUR(t) 返回t中的小时值 SELECT HOUR('1:2:3') ->1 MINUTE(t) 返回t中的分钟值 SELECT MINUTE('1:2:3') ->2 SECOND(t) 返回t中的秒钟值 SELECT SECOND('1:2:3') ->3 四、系统信息函数   系统信息函数用来查询MySQL数据库的系统信息。 函数 作用 VERSION() 返回数据库的版本号 SELECT VERSION() ->5.0.67-community-nt CONNECTION_ID() 返回服务器的连接数 DATABASE()、SCHEMA 返回当前数据库名 USER()、SYSTEM_USER() 返回当前用户 五、加密函数   加密函数是MySQL用来对数据进行加密的函数。   1、PASSWORD(str)   该函数可以对字符串str进行加密,一般情况下,PASSWORD(str)用于给用户的密码加密。 SELECT PASSWORD('123') ->*23AE809DDACAF96AF0FD78ED04B6A265E05AA257   2、MD5   MD5(str)函数可以对字符串str进行散列,可以用于一些普通的不需要解密的数据加密。 SELECT md5('123') ->202cb962ac59075b964b07152d234b70   3、ENCODE(str,pswd_str)与DECODE(crypt_str,pswd_str)   ENCODE函数可以使用加密密码pswd_str来加密字符串str,加密结果是二进制数,需要使用BLOB类型的字段保存。该函数与DECODE是一对,需要同样的密码才能够解密。 SELECT ENCODE('123','xxoo') ->;vx SELECT DECODE(';vx','xxoo') ->123 insert into login values('lch','alvin',encode('123','xxoo'),'50') select Name,decode(Password,'xxoo') from login where username='lch'
  • 相关阅读:
    LeetCode OJ 107. Binary Tree Level Order Traversal II
    LeetCode OJ 116. Populating Next Right Pointers in Each Node
    LeetCode OJ 108. Convert Sorted Array to Binary Search Tree
    LeetCode OJ 105. Construct Binary Tree from Preorder and Inorder Traversal
    LeetCode OJ 98. Validate Binary Search Tree
    老程序员解Bug的通用套路
    转载 四年努力,梦归阿里,和大家聊聊成长感悟
    转载面试感悟----一名3年工作经验的程序员应该具备的技能
    Web Service和Servlet的区别
    关于spring xml文件中的xmlns,xsi:schemaLocation
  • 原文地址:https://www.cnblogs.com/zst062102/p/5421775.html
Copyright © 2011-2022 走看看