Chinaunix

标题: SQL中怎样处理时间问题? [打印本页]

作者: sz53    时间: 2007-04-26 20:49
标题: SQL中怎样处理时间问题?
现在需要处理通话时长,源文件中只有“起始时间”和“结束时间”标识如:起始时间20070426210343(21点零3分43秒开始)结束时间20070426211812(21点零18分12秒),由于时间分、秒是60进制,小时是24进制,请问如果统计通话市场“结束时间”-“起始时间”怎样写SQL语句正确?使用何种函数?谢谢!
作者: lizheng83    时间: 2007-04-26 21:13
标题: .
有个DATEDIFF函数
select DATADIFF ('endtime','begintime');


还有一个TIMEDIFF(expr,expr2)
TIMEDIFF() 返回起始时间 expr 和结束时间expr2 之间的时间。 expr 和expr2 为时间或 date-and-time 表达式,两个的类型必须一样。  

mysql> SELECT TIMEDIFF('2000:01:01 00:00:00',

    ->                 '2000:01:01 00:00:00.000001');

        -> '-00:00:00.000001'

mysql> SELECT TIMEDIFF('1997-12-31 23:59:59.000001',

    ->                 '1997-12-30 01:01:01.000002');

        -> '46:58:57.999999'

看看手册啊~ ^-^y




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2