数据库中的时间差函数TimeDiff

转载 2012年03月23日 16:05:19

Function TimeDiff(sBegin, sEnd)
Dim iHourB, iMinuteB, iSecondB, iMiniSecondB
Dim iHourE, iMinuteE, iSecondE, iMiniSecondE
Dim dTimeB, dTimeE, dTimeDiff
Dim iHour, iMinute, iSecond, iMiniSecond

iHourB = clng(Left(sBegin, 2))
iMinuteB = clng(Mid(sBegin, 4, 2))
iSecondB = clng(Mid(sBegin, 7, 2))
iMiniSecondB = clng(Mid(sBegin, 10, 4))

iHourE = clng(Left(sEnd, 2))
iMinuteE = clng(Mid(sEnd, 4, 2))
iSecondE = clng(Mid(sEnd, 7, 2))
iMiniSecondE = clng(Mid(sEnd, 10, 4))

dTimeB = iHourB * 3600 + iMinuteB * 60 + iSecondB + iMiniSecondB / 1000
dTimeE = iHourE * 3600 + iMinuteE * 60 + iSecondE + iMiniSecondE / 1000
dTimeDiff = dTimeE - dTimeB

iHour = Int(dTimeDiff / 3600)
dTimeDiff = dTimeDiff - iHour * 3600
iMinute = Int(dTimeDiff / 60)
dTimeDiff = dTimeDiff - iMinute * 60
iSecond = Int(dTimeDiff)
dTimeDiff = dTimeDiff - Int(dTimeDiff)
iMiniSecond = dTimeDiff

TimeDiff = iHour & "小时" & iMinute & "分钟" & iSecond & FormatNumber(iMiniSecond, 3) & "秒"
End Function

详细出处参考:http://www.jb51.net/article/12904.htm

相关文章推荐

MySQL时间函数TIMEDIFF溢出

最近做的公司内部系统,毕竟是菜鸟,遇到g

SQL timediff 引发的血案

问题运行了半年的代码今天发现一个奇怪的bug ,select timediff(expire_time, current_timestamp) from table where id in('957...

MySQL函数和操作符(超详细,备着查找)

一、操作符 1.1 操作符优先级 以下列表显示了操作符优先级的由低到高的顺序。排列在同一行的操作符具有相同的优先级。 操作符 优先级 := 1 ||,...

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

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

sqlserver 计算数据库时间差

  • 2017年10月10日 16:49
  • 629B
  • 下载

DB2数据库计算时间差

项目开发中遇到的问题,现总结出来留做备忘。 项目要求通过SQL计算出确认收货日期和发货日期之间的时间差(按天计算),因部分商品存在确认收货日期跨度较大的情况,所以在使用DB2提供的时间函数计算时出现了...

自写函数时间差计算函数

  • 2011年10月09日 17:49
  • 9KB
  • 下载

Oracle计算时间差函数

两个Date类型字段:START_DATE,END_DATE,计算这两个日期的时间差(分别以天,小时,分钟,秒,毫秒):天:ROUND(TO_NUMBER(END_DATE - START_DATE)...

Java 时间差运算工具函数(时间戳运算)

main 函数调用 : public static void main(String[] args) throws ParseException { // 获取指定long型的时间 S...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:数据库中的时间差函数TimeDiff
举报原因:
原因补充:

(最多只允许输入30个字)