iis服务器助手广告
返回顶部
首页 > 资讯 > 后端开发 > GO >当有 DB、Go 和 Unix 版本时,我在比较日期时间时遇到问题
  • 713
分享到

当有 DB、Go 和 Unix 版本时,我在比较日期时间时遇到问题

2024-04-05 00:04:31 713人浏览 八月长安
摘要

golang不知道大家是否熟悉?今天我将给大家介绍《当有 DB、Go 和 Unix 版本时,我在比较日期时间时遇到问题》,这篇文章主要会讲到等等知识点,如果你在看完本篇文章后,有更好的建议或者发现哪

golang不知道大家是否熟悉?今天我将给大家介绍《当有 DB、Go 和 Unix 版本时,我在比较日期时间时遇到问题》,这篇文章主要会讲到等等知识点,如果你在看完本篇文章后,有更好的建议或者发现哪里有问题,希望大家都能积极评论指出,谢谢!希望我们能一起加油进步!

问题内容

所以,基本上一个人有轮班,有开始时间和持续时间,我需要知道还有多少分钟。

我从数据库 (Mysql) 中检索轮班开始日期时间的标准字符串(例如,2022-01-01 09:00:00)。 我还检索轮班的小时数(例如 8)。 然后我可以使用 go 的 time.time 确定当前时间,但这种格式是不同的。

请参阅下面的代码,它更好地解释了问题,并给出了缺失的部分。

var shiftStartDB string // For example 2022-01-01 09:00:00
var shiftStartUnix int // For example, start time converted to minutes since epoch
var offTimer int // Number of hours for the shift
var shiftEndDB string // For example 2022-01-01 17:00:00
var shiftEndUnix int // For example, end time converted to minutes since epoch
var nowTime Time.time // Go's version of time for now
var nowUnix int // Go has now converted to Unix time
var templateID string
var minsToGo int

_ = db.QueryRow("SELECT LastSignedOn, OffTimer, TemplateID FROM assets WHERE ID = ?", assetid).Scan(&shiftStartDB, &offTimer, &templateID)
shiftStartUnix = <convert database time into unix time>
if offTimerTemp == 0 {
    _ = db.QueryRow("OffTimer FROM templates WHERE ID = ?", templateID).Scan(&offTimer)
}
shiftEndUnix = shiftStartUnix + (offTimer * 60)
nowTime = time.Now()
nowUnix = <convert Go time into Unix time>
minsToGo = shiftEndInt - nowInt


正确答案


您可以使用 nowunix = nowtime.unix()/60,因为 time.unix 返回自纪元以来经过的秒数。也就是说,如果您解析时间并直接使用 go 库时间函数,这可能会更容易处理:

shiftStartTime,err := time.Parse("2006-02-01 15:04:05",dbTime)
shiftEnd=shiftStartTime.Add(time.Hour*offTimer)
minsToGo:=shiftEnd.Sub(time.Now()).Minutes()

理论要掌握,实操不能落!以上关于《当有 DB、Go 和 Unix 版本时,我在比较日期时间时遇到问题》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注编程网公众号吧!

您可能感兴趣的文档:

--结束END--

本文标题: 当有 DB、Go 和 Unix 版本时,我在比较日期时间时遇到问题

本文链接: https://www.lsjlt.com/news/596754.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作