sql - 如何在sql中找到两个时间值之间的差异
问题描述
我目前正在编写一个 C# 应用程序,用户可以在其中记录每天的登录和注销时间。
时间存储在数据类型为 time(0) 的表中,因此时间显示为 09:00:00。
存储数据的列是 Sign_In、Sign_Out
我要做的是显示用户当天工作了多长时间,例如 Sign_In 09:00:00 Sign_Out 17:00:00 。例如,这里的差异是 8 小时。我曾尝试研究 tish,但无法弄清楚。我为此尝试了以下方法。
如何在 SQL 语句中编写 Sign_Out 减去 Sing_In ?
解决方案
您可以使用datediff()
:
select datediff(minute, sign_in, sign_out) as minutes_inside
如果您希望将其作为小时数,我建议您使用小数小时数:
select datediff(minute, sign_in, sign_out) / 60.0 as hours_inside
推荐阅读
- flutter - 飞镖映射 - 不打印添加到它的所有键值巴黎
- javascript - 如何在 Stripe 网站中制作代码片段动画
- java - 注释 @ActiveProfile 在 Spring 应用程序中不起作用
- c# - Selenium SendKeys (Keys.PageDown); 如何进行一次点击
- r - 从 LOESS 图导出结果
- arrays - 谷歌表格从特定列复制单元格
- api - 一个好的做法是在错误请求中返回有效值列表吗?
- apache-kafka - Spring Cloud Kafka Streams 中的错误处理
- r - 如何在闪亮的代码块中使用反应参数作为参数的值
- amazon-eks - eks 和 StateFulSets 中的 Calico CNI