易截截图软件、单文件、免安装、纯绿色、仅160KB

mysql如何计算两个时间相差的天数?

google了一下,用datediff, 不符合要求,例子如下:
select datediff('2009-09-27 00:00:00','2009-09-26 23:59:59' )  结果是1,不符合要求,明明才相差那么一点,根本不够一天,mysql的datediff,是取一个时间的日期后再进行比较的;
如果用 timediff
select timediff('2009-09-27 00:00:00','2009-09-26 23:59:59' )  结果为00:00:01
select timediff('2009-10-01 12:35:11','2009-09-26 23:59:59' )  结果为108:35:12
可是108:35:12这样的结果,怎么转换成天阿,谢谢

SQL code:
mysql> select TIME_TO_SEC(timediff('2009-09-27 00:00:00','2009-09-26 23:59:59' )
)/60/60/24 as dd;
+----------------+
| dd |
+----------------+
| 0.000011574074 |
+----------------+
1 row in set (0.00 sec)

mysql> select TIME_TO_SEC(timediff('2009-10-01 12:35:11','2009-09-26 23:59:59' )
)/60/60/24 as dd;
+----------------+
| dd |
+----------------+
| 4.524444444444 |
+----------------+
1 row in set (0.00 sec)

mysql>


就用后面一种,取到之后转化一下就好了,而且也很精确
108:35:12这样的结果把108/24,取整就是4天,余12个小时,35分,12秒,用字符串转化判断下就好了


如需要阅读该回复,请登录或注册CSDN!




相关问答:

MySQL数据包过大

我用一个循环往数据库里面存文件,本来可以作为文件存放数据库里面只放文件的位置的,但是没有办法租的服务器网页空间大小有限制数据库没有限制。语句是这样的


public static final DataBase.MAXSIZE=102 ......

MySql问题

MySql中插入当前时间的该怎么写啊?
now()

SQL code:

sql里是:
getdate()

引用
now()


学习

SQL code:
select now();

SQL code:
TODAY()
?

SQL code:
select now();
/* ......

mysql like 问题

select * from table where '123456789' like '%'+字段表+'%'


这句sql在sqlserver下通过,在mysql下有报错,mysql下如何实现这样的查询呢
SQL code:
select * from table whe ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号