TIMESTAMPDIFF和TIMESTAMPADD函数
TIMESTAMPDIFF
语法:TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)。
说明: 返回日期或日期时间表达式datetime_expr1 和datetime_expr2the 之间的整数差。其结果的单位由interval 参数给出。该参数必须是以下值的其中一个:
FRAC_SECOND。表示间隔是毫秒
SECOND。秒
MINUTE。分钟
HOUR。小时
DAY。天
WEEK。星期
MONTH。月
QUARTER。季度
YEAR。年
示例:select TIMESTAMPDIFF(day,’2012-08-24’,’2012-08-30’);
select TIMESTAMPDIFF(MINUTE,’2012-08-24 09:00:00’,’2012-08-30 12:00:00’);
TIMESTAMPADD
语法:TIMESTAMPADD(interval,int_expr,datetime_expr)
说明:将整型表达式int_expr 添加到日期或日期时间表达式 datetime_expr中。式中的interval和上文中列举的取值是一样的。
示例:select TIMESTAMPADD(MINUTE,8820,’2012-08-24 09:00:00’);
IFNULL
语法:IFNULL(expr1,expr2)
说明:如果 expr1 不是 NULL,IFNULL() 返回 expr1,否则它返回 expr2。 IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境。
示例:SELECT IFNULL(1,0);
SELECT IFNULL(1/0,’sample’);
MySQL中CONCAT函数
CONCAT
语法:CONCAT(str1,str2,…)
说明:返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。
示例:select concat(‘11’,’22’,’33’);
select concat(‘11’,’22’,null);
CONCAT_WS
语法:CONCAT_WS(separator,str1,str2,…)
说明:CONCAT_WS() 代表 CONCAT With Separator ,是CONCAT()的特殊形式。第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。‘
注意:如果分隔符为 NULL,则结果为 NULL。函数会忽略任何分隔符参数后的 NULL 值。
和MySQL中concat函数不同的是, concat_ws函数在执行的时候,不会因为NULL值而返回NULL
示例:select concat_ws(‘,’,’11’,’22’,’33’);
select concat_ws(‘,’,’11’,’22’,NULL);
GROUP_CONCAT
语法:group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段][Separator ‘分隔符’])
DATE_FORMAT()
语法:DATE_FORMAT(date,format)
说明:DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。date 参数是合法的日期。format 规定日期/时间的输出格式。
示例:DATE_FORMAT(NOW(),’%b %d %Y %h:%i %p’)
DATE_FORMAT(NOW(),’%m-%d-%Y’)
DATE_FORMAT(NOW(),’%d %b %y’)
DATE_FORMAT(NOW(),’%d %b %Y %T:%f’)
INSTR
语法:INSTR(str,substr)
说明:INSTR()函数返回字符串中子字符串第一次出现的位置。如果在str中找不到子字符串,则INSTR()函数返回零(0)。
INSTR函数接受两个参数:str是要搜索的字符串。substr是要搜索的子字符串。
INSTR()函数不区分大小写。这意味着如果通过小写,大写,标题大小写等,结果总是一样的。
示例:SELECT INSTR(‘MySQL INSTR’, ‘SQL’);