sql - 计算日期差以在 SQLDB 中不四舍五入获得输出
问题描述
我想计算两个日期之间的日期差异,并且输出在 SQL DB 中将没有舍入。
Date1: 2017-07-16 16:01:00.0000000
Date2: 2017-10-10 00:00:00.0000000
output would be: 85,3326388888891
我写了 sql 查询,但没有得到确切的结果:
select (datediff(d, '2017-07-16 16:01:00.0000000', '2017-10-10 00:00:00.0000000'))
并86
作为输出。
解决方案
您可以使用以下语句得到预期的结果,但重要的问题是为什么需要这样的计算(两个日期之间的天数,基于秒或分钟的差异):
SELECT
(datediff(second, '2017-07-16 16:01:00.0000000', '2017-10-10 00:00:00.0000000')) /
(24.0 * 60 * 60)
--or
SELECT
(datediff(minute, '2017-07-16 16:01:00.0000000', '2017-10-10 00:00:00.0000000')) /
(24.0 * 60)
结果:
85.3326388888
85.3326388
推荐阅读
- javascript - framework7 react - 以编程方式切换选项卡
- python - node.js 发送 POST 请求以进行身份验证
- c# - 如何在 WPF 中将项目添加到 ListView
- c# - WPF 可观察集合
UI 框架元素嵌套 2 类深度 - javascript - 成员函数不能访问其成员属性?
- python - AttributeError:“PosixPath”对象没有属性“写”
- javascript - 如何生成唯一的随机数
- linux - 在 Windows 上安装 Ubuntu 虚拟机
- html - 为什么当我使用 box-shadow 时白色背景颜色会在正确的背景颜色出现之前闪烁
- airflow-scheduler - 从 DAG 文件夹中挑选 dag 时出现气流延迟