mysql函数

来源:互联网 发布:淘宝如何买到正品耐克 编辑:程序博客网 时间:2024/06/09 17:36

1.字符串函数

(1)大小写处理

将字符串转换成大写的

UPPER(str)SELECT UPPER(ENAME) from emp;
将字符串转换为小写的
LOWER(str)mysql> SELECT LOWER('QUADRATICALLY');        -> 'quadratically'

(2)CONCAT(str1,str2,...)字符串连接

CONCAT(str1,str2,...)mysql> SELECT CONCAT('My', 'S', 'QL');     -> 'MySQL'

(3) SUBSTRING(str,pos,len)

str为字符串;

pos为起始位置;

len为长度。

mysql> SELECT SUBSTRING('Quadratically',5);        -> 'ratically'mysql> SELECT SUBSTRING('foobarbar' FROM 4);        -> 'barbar'mysql> SELECT SUBSTRING('Quadratically',5,6);        -> 'ratica'        mysql> SELECT SUBSTRING('Sakila', -3);        -> 'ila'        mysql> SELECT SUBSTRING('Sakila', -5, 3);        -> 'aki'mysql> SELECT SUBSTRING('Sakila' FROM -4 FOR 2);        -> 'ki'

(4)LENGTH(str)字符串长度

mysql> SELECT LENGTH('text');        -> 4
(5)INSTR(str,substr)   返回字符串 str 中子字符串的第一个出现位置
mysql> SELECT INSTR('foobarbar', 'bar');        -> 4mysql> SELECT INSTR('xbar', 'foobar');        -> 0
(6)LPAD(str,len,padstr)返回字符串 str, 其左边由字符串padstr 填补到len 字符长度。假如str 的长度大于len, 则返回值被缩短至 len 字符。
mysql> SELECT LPAD('hi',4,'??');        -> '??hi'mysql> SELECT LPAD('hi',1,'??');        -> 'h'
(7)RPAD(str,len,padstr)返回字符串str, 其右边被字符串 padstr填补至len 字符长度。假如字符串str 的长度大于 len,则返回值被缩短到与 len 字符相同长度。
mysql> SELECT RPAD('hi',5,'?');        -> 'hi???'mysql> SELECT RPAD('hi',1,'?');        -> 'h'
(8)TRIM([remstrFROM] str)返回字符串 str , 其中所有remstr 前缀和/或后缀都已被删除 remstr 为可选项,在未指定情况下,可删除空格。
mysql> SELECT TRIM('  bar   ');        -> 'bar'mysql> SELECT TRIM(LEADING 'x' FROM 'xxxbarxxx');        -> 'barxxx'mysql> SELECT TRIM(BOTH 'x' FROM 'xxxbarxxx');        -> 'bar'mysql> SELECT TRIM(TRAILING 'xyz' FROM 'barxxyz');        -> 'barx'


2.数值函数
(1)ABS(X) 返回X 的绝对值
mysql> SELECT ABS(2);        -> 2mysql> SELECT ABS(-32);        -> 32
(2)ACOS(X)返回X 反余弦, 即, 余弦是X的值。若X 不在-1到 1的范围之内,则返回 NULL 
mysql> SELECT ACOS(1);        -> 0mysql> SELECT ACOS(1.0001);        -> NULL

(3)ASIN(X)  返回X 的反正弦,即,正弦为X 的值。若X  若X 不在-1到 1的范围之内,则返回 NULL 。

mysql> SELECT ASIN(0.2);        -> 0.20135792079033
(4)EXP(X) 返回e的X乘方后的值(自然对数的底)。
mysql> SELECT EXP(2);        -> 7.3890560989307mysql> SELECT EXP(-2);        -> 0.13533528323661
(5)ROUND(X) ROUND(X,D)  返回参数X, 其值接近于最近似的整数。在有两个参数的情况下,返回 X ,其值保留到小数点后D位,而第D位的保留方式为四舍五入。若要接保留X值小数点左边的D 位,可将 D 设为负值。
mysql> SELECT ROUND(-1.23);        -> -1mysql> SELECT ROUND(-1.58);        -> -2mysql> SELECT ROUND(1.58);        -> 2mysql> SELECT ROUND(1.298, 1);        -> 1.3mysql> SELECT ROUND(1.298, 0);        -> 1mysql> SELECT ROUND(23.298, -1);        -> 20
(6)TRUNCATE(X,D)   返回被舍去至小数点后D位的数字X。若D 的值为 0, 则结果不带有小数点或不带有小数部分。可以将D设为负数,若要截去(归零) X小数点左起第D位开始后面所有低位的值
mysql> SELECT TRUNCATE(1.223,1);        -> 1.2mysql> SELECT TRUNCATE(1.999,1);        -> 1.9mysql> SELECT TRUNCATE(1.999,0);        -> 1mysql> SELECT TRUNCATE(-1.999,1);        -> -1.9mysql> SELECT TRUNCATE(122,-2);       -> 100mysql> SELECT TRUNCATE(10.28*100,0);       -> 1028

3.日期函数 
(1)CURDATE()   将当前日期按照'YYYY-MM-DD' 或YYYYMMDD 格式的值返回,具体格式根据函数用在字符串或是数字语境中而定。 
mysql> SELECT CURDATE();        -> '1997-12-15'mysql> SELECT CURDATE() + 0;        -> 19971215
(2)CURTIME()  将当前时间以'HH:MM:SS'或 HHMMSS 的格式返回, 具体格式根据函数用在字符串或是数字语境中而定。
mysql> SELECT CURTIME();        -> '23:50:26'mysql> SELECT CURTIME() + 0;        -> 235026
(3)DATE(expr)   提取日期或时间日期表达式expr中的日期部分。
mysql> SELECT DATE('2003-12-31 01:02:03');        -> '2003-12-31'
(4)DATEDIFF(expr,expr2)  DATEDIFF() 返回起始时间 expr和结束时间expr2之间的天数。Expr和expr2 为日期或 date-and-time 表达式。计算中只用到这些值的日期部分。
mysql> SELECT DATEDIFF('1997-12-31 23:59:59','1997-12-30');        -> 1mysql> SELECT DATEDIFF('1997-11-30 23:59:59','1997-12-31');        -> -31

原创粉丝点击