SQL 计算两个日期之间相差的秒数、分钟数和小时数,算出两个日期之间相差多少秒。例如,希望知道 ALLEN 和 WARD 的 HIREDATE
之间相差多少秒、多少分钟以及多少小时。
SQL 计算两个日期之间相差的秒数、分钟数和小时数 问题描述
算出两个日期之间相差多少秒。例如,希望知道 ALLEN 和 WARD 的 HIREDATE
之间相差多少秒、多少分钟以及多少小时。
SQL 计算两个日期之间相差的秒数、分钟数和小时数 解决方案
如果我们能算出来两个日期之间相差多少天,那么也就能知道它们相差多少秒、多少分钟和多少小时,只需对不同的时间单位做出相应的换算即可。
DB2
使用 DAYS
函数计算 ALLEN 和 WARD 的 HIREDATE
之间相差多少天,然后进行时间单位换算。
MySQL 和 SQL Server
使用 DATEDIFF
函数计算 ALLEN 和 WARD 的 HIREDATE
之间相差多少天,然后进行时间单位换算。
Oracle 和 PostgreSQL
使用减法计算 ALLEN 和 WARD 的 HIREDATE
之间相差多少天,然后进行时间单位换算。
SQL 计算两个日期之间相差的秒数、分钟数和小时数 扩展知识
在上述所有的解决方案中,内嵌视图 X
都被用来获取 WARD 和 ALLEN 的 HIREDATE
,如下所示。
WARD_HD
和 ALLEN_HD
之间相差的天数分别乘以 24(一天的小时数),1440(一天的分钟数)和 86400(一天的秒数),就得到最终结果了。