1

我正在开发一个多数据库系统。
我想要以秒为单位的两个日期之间的差异。

SQL Server中,我得到:
DATEDIFF(second,stardate,enddate)
MySql中:
TIME_TO_SEC(TIMEDIFF(stardate,enddate))

我的问题:
Sql Ansi 是否具有管理 DateTime 值的功能?
即:所有数据库都有通用的日期时间函数吗?

4

1 回答 1

2

根据 SQL:1999,date1-date0 应该给你一个 INTERVAL 类型的值,一个你应该能够从中提取 YEAR、MONTH、DAY 等的结构。

我从未使用过它,我认为它没有得到广泛支持(尽管我可能不是最新的)。如果您在数据库层进行时间算术,并且希望与跨 DBMS 兼容,通常的解决方案是简单地使用整数时间戳(无论分辨率如何,但 Unix 时间很常见)和普通的旧整数算术,这是完全可靠的交叉-平台。

于 2009-01-16T01:40:14.670 回答