Mysql中求两个时间差的小时数以及mysql中substring

您所在的位置:网站首页 mysql如何计算两个时间差的数量 Mysql中求两个时间差的小时数以及mysql中substring

Mysql中求两个时间差的小时数以及mysql中substring

2024-07-12 04:45| 来源: 网络整理| 查看: 265

Mysql中求两个时间差的小时数以及mysql中substring_index 用法

1.mysql中求两个时间的差,返回小时数:可以使用mysql的hour() 函数,具体如下:

SQL code ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 mysql>  set  @d1= '2010-01-03 15:30:00' ; Query OK, 0  rows  affected (0.00 sec)   mysql>  set  @d2= '2010-01-04 17:40:00' ; Query OK, 0  rows  affected (0.00 sec)   mysql>  select  hour (timediff(@d2,@d1)); + -------------------------+ |  hour (timediff(@d2,@d1)) | + -------------------------+ |                      26 | + -------------------------+ 1 row  in  set  (0.02 sec)   mysql>

2.mysql中substring_index()的用法:

具体:SUBSTRING_INDEX(str,delim,count);

其中:str 是要被截取的字符串,delim 是分隔符,count是第count个分隔符,话不多说,大家看例子就明白:

注意:count可以为负值,默认是正数,如果是正数,则从左往右开始算,取分隔符左边的内容;如果是负数,那就是从右往左开始算,取分隔符右边的内容,大家看下面的例子,一看就懂……

mysql> select substring_index('www.baidu.com.','.',2); +-----------------------------------------+ | substring_index('www.baidu.com.','.',2) | +-----------------------------------------+ | www.baidu                               | +-----------------------------------------+ 1 row in set (0.00 sec) mysql> select substring_index('www.baidu.com.','.',-2); +------------------------------------------+ | substring_index('www.baidu.com.','.',-2) | +------------------------------------------+ | com.                                     | +------------------------------------------+ 1 row in set (0.00 sec) mysql> select substring_index('www.baidu.com.cn.google.','.',-2); +----------------------------------------------------+ | substring_index('www.baidu.com.cn.google.','.',-2) | +----------------------------------------------------+ | google.                                            | +----------------------------------------------------+ 1 row in set (0.00 sec)

注意:下面的例子是对地1点的补充:

mysql> set @d1 = '2010-01-03 15:30:00'; Query OK, 0 rows affected (0.00 sec) mysql> set @d2 = '2010-01-04 17:40:00'; Query OK, 0 rows affected (0.00 sec) mysql> select hour(timediff(@d2,@d1)); +-------------------------+ | hour(timediff(@d2,@d1)) | +-------------------------+ |                      26 | +-------------------------+ 1 row in set (0.00 sec) mysql> select substring_index(timediff(@d1,@d2),':',1); +------------------------------------------+ | substring_index(timediff(@d1,@d2),':',1) | +------------------------------------------+ | -26                                      | +------------------------------------------+ 1 row in set (0.03 sec) mysql> select timediff(@d2,@d1); +-------------------+ | timediff(@d2,@d1) | +-------------------+ | 26:10:00          | +-------------------+ 1 row in set (0.00 sec) mysql>

good luck for you !



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3