zoukankan      html  css  js  c++  java
  • 2016/3/17 Mysq select 数学函数 字符串函数 时间函数 系统信息函数 加密函数

    一,数学函数主要用于处理数字,包括整型、浮点数等。

    ABS(X) 返回x的绝对值  

    SELECT ABS(-1)--返回1

    CEll(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) X值相同返回的随机数相同 

    SELECT RAND(2)  --1.5865798029924

    PI()  返回圆周率(3.141593)

    SELECT PI() --3.141593

    TRUNCAT(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,....) 函数,但是每个字符串直接要加上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) 将字符串S中的字符串s1换成字符串S2

    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) 返回日期当中的月份名称,如january 

    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

    DAOFMONTH(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 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 ENCODE(':VX','XXOO')-->123

    insert into login values('1ch','alvin',encode('123','xxoo'),'50')

    select Name,decode(pssword,'xxoo')from login where username='1ch'

  • 相关阅读:
    springMVC中@RequestParam和@RequestBody的作用
    java 中Excel的导入导出
    数据库字段名称与实体类属性不一致的处理措施
    linux下解压命令大全
    linux 下 cat
    mysqli
    解析php mysql 事务处理回滚操作(附实例)
    css 样式(checkbox开关、css按钮)
    cetons 怎么强制卸载 PHP
    yhdsir@function:php
  • 原文地址:https://www.cnblogs.com/haodayikeshu/p/5288010.html
Copyright © 2011-2022 走看看