您的位置:首页 > 数据库 > MySQL

MySQL函数

2015-07-30 13:04 656 查看
一.字符串操作函数

1.字符串比较

1)利用Like语句,其原型为:

expr Like ['XXX']

其中,expr代表待比较的字符串,XXX为模式串,在MySQL中正则表达式的模式字符的定义如下:

编号             字符                                含义

 1                    %                            匹配任意个字符,包括零字符

 2                     _                            严格的匹配一个字符

 3                   \%                            匹配字符%

 4                   \_                             匹配字符_

使用方式如下:



2)利用NOT Like语句,其原型如下:

expr not like ['XXX']

他的使用方式与like相反,即不匹配时,返回1,否则返回0.

2.正则表达式

MySQL实现了更为强大的正则表达式查找,这是一种复杂的串查询技术。

正则表达式的命令格式形如:

expr REGEXP pat

表达式的含义是:模式pat对字符串表达式expr执行一次正则表达式的比较,其中模式可以是一个扩展的正则表达式。

如果表达式匹配pat,则返回1,否则返回0.

示例如下:



其中rlike是regexp的同义词,使用好正则表达式的关键是掌握各种模式字符的意义。

上面的例子中,^代表匹配前面所有的字符串,$用于匹配后面所有的字符。

1)用“.”匹配任何一个字符,使用方式如下:

select 'foo' regexp 'f.o'

利用"."来匹配中间那个o。

2)X*,他的含义是用于匹配后面的任意(包括0)个为X的字符



3)X+,他的含义是用于匹配后面的任意个字符



4)X?,他的含义是用于匹配后面0个或1个字符a



5)abc|def,他的含义是:或者匹配前面的abc,或者匹配后面的def



6)(abc*),他的含义是匹配0个或多个abc



3.计算长度

可以用length函数计算字符串的长度,结果返回字符串的个数,如果字符串为NULL,则返回NULL。

另外用bit_length,则能够返回字符从所占用的比特长度。

使用方法:select length('1234');

4.子串查找

1)substring(str,pos),用于返回字符串str的pos位置之后的子串。(pos是位置)

2)substring(str,pos,len),与上一函数类似,用于返回字符串str的pos位置后len个字符的子串。

3)right(str,len),用于返回字符串str最右边的len个字符。



4)left(str,len),用于返回str最左边len个字符

5)locate(substr,str),用于返回子串substr在字符串str最开始出现的位置。

二.控制函数

1.NULL测试

1)IFNULL的原型为IFNULL(exp1,exp2),如果exp1为非NULL,则返回exp1;否则返回exp2

2)NULLIF的原型为NULLIF(exp1,exp2),如果exp1与exp2相等,则返回NULL,否则,返回exp1



2.IF

IF函数的原型为:IF(exp1,exp2,exp3)

它的含义是:如果exp1为真,那么IF返回exp2,否则返回exp3.IF可以返回数字和字符串。



3.CASE

Case函数有两种表现形式。第一种形势下,Case会执行与value相匹配的compare-value,如果没有则返回NULL。

CASE value WHEN [compare-value] THEN result [WHEN [compare-value] THEN result...]

[ELSE result] END



第二种形势下,判断第一个满足条件的condition表达式,如果均没有则直接返回null

CASE WHEN [condition] THEN result [WHEN [condition] THEN result... ] [ELSE result]

END



三.数学函数

1.四则运算(略)

2.高级运算

1)可以利用round函数,进行四舍五入

select round(9.3);

2)可以利用log函数进行对数求解,log函数的基本原型为log(b,x),其中b表示底,x表示要求的值。

3)利用rand()和rand(n)函数,可以计算出0-1.0之间的随机数,如果指定n,会被当成种子

4)Pow(x,y)函数可以求x的y次方。

5)radians能够将一个角度转化为弧度。

四.时间与日期函数

1.weekday

用于返回某一天的星期索引,即如果是星期一,则返回0,如果是星期日,则返回6.



2.dayofyear

用于返回某一天,处于当前的第几天

3.now

用于返回当前的时间



4.to_days

用于返回从0年到某一个日期所经历的天数。

5.date_format

date_format的格式为date_format(date,format),按format的形式,对date进行格式化。

五,加密函数

1.md5

md5的格式是md5(x),用于计算字符串x的MD5 128位校验和

2.encode和decode

3.sha和sha1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: