代码改变世界

MySQL中的几个函数

2016-03-04 16:16  夜半花开  阅读(340)  评论(0)    收藏  举报

公司用的mybatis,瞬间感觉自己的sql不够用了

 

一、MySQL DATEDIFF() 函数

函数返回两个日期之间的天数。
语法
DATEDIFF(date1,date2)
date1 和 date2 参数是合法的日期或日期/时间表达式。
注释:只有值的日期部分参与计算。
实例
例子 1
使用如下 SELECT 语句:
SELECT DATEDIFF('2008-12-30','2008-12-29') AS DiffDate
结果:
DiffDate
1
例子 2
使用如下 SELECT 语句:
SELECT DATEDIFF('2008-12-29','2008-12-30') AS DiffDate
结果:
DiffDate
-1

二、INSTR(str,substr)

返回字符串str串中substr子串第一个出现的位置。

mysql> SELECT INSTR('foobarbar', 'bar');
+---------------------------------------------------------+
| INSTR('foobarbar', 'bar') |
+---------------------------------------------------------+
| 4 |
+---------------------------------------------------------+
1 row in set (0.00 sec)

备注:

数据量大时(几十万条数据):
SELECT * FROM table WHERE title LIKE '%keyword%'

语句用

SELECT * FROM table WHERE instr(title,'keyword')>0
替换,可提交效率

三、IF(Condition,A,B)

当Condition为TRUE时,返回A;当Condition为FALSE时,返回B。

作用:作为条件语句使用。