gpt4 book ai didi

sql - 无法将日期时间纪元转换为仅日期纪元格式

转载 作者:数据小太阳 更新时间:2023-10-29 03:36:39 25 4
gpt4 key购买 nike

我正在尝试从一个 DB(db1) 获取日期格式的日期(“jobDate”),然后插入到另一个 DB(db2),其中 Date(“resolvedDate”)为纪元格式。现在我将日期从 db1 传递到 db2 的选择查询。为了匹配它们的数据类型,我将 time.Time 转换为纪元格式并传递给 db2。我不需要时间戳,只需要 YYYY-MM-DD 格式。但这里的问题是,来自 db2 的纪元日期包含日期和时间。结果,当我将 jobDate 传递给 select 查询时,它无法匹配 resolvedDate 中的任何条目。

我的代码如下:

dsn := "server=********.md3q.***.com;user id=*******;password=******"
db, err := sql.Open("mssql", dsn)
if err != nil {
log.Fatal(err)
}
err = db.Ping()
if err != nil {
log.Fatal(err)
}
rows,err := db2.Query("select top 1 jobDate from mdesk.dbo.tbl_jobstatus where LastStatus = 'Success' ORDER BY jobDate DESC")
if err != nil {
log.Println(err)
}
defer db.Close()
for rows.Next() {
err := rows.Scan(&jobDate)
if err != nil {
log.Fatal(err)
}
log.Println("jobDate",jobDate) //2013-01-11 00:00:00 +0000 UTC (I'm getting this)
}
input:= jobDate.Unix()
jobDate:= input3
log.Println("EpochDate",jobDate) // 1357948800 this is the epoch format of the above date

dsn1 := "server=*******.ecc4q.******.com; user id=*******; password=*********"
db1, err := sql.Open("mssql", dsn1)
if err != nil {
log.Fatal(err)
}
err = db1.Ping()
if err != nil {
log.Fatal(err)
}
rows1, err := db1.Query("select Incident_Number, resolvedDate, Corporate_ID from ITSM.dbo.HPD_Help_Desk_Classic where resolvedDate in (?)",jobDate) //main problem is here. 1357948800 is not matching with any entry in this query because all of the entries in resolvedDate are in datetime epoch format whereas I am trying to search in date epoch format.
if err != nil {
log.Println(err)
}
defer db.Close()

谁能指出我做错了什么?

最佳答案

如果“resolvedDate”列的日期类型是 DATE,则尝试将 time.Time 转换为 SQL 中的 DATE(见下文)。如果“resolvedDate”是一个int或string,则使用time.Format()方法对其进行预处理。

并且总是担心时区问题。如果您的数据库不是 UTC,那么您可能会遇到意外行为。

rows1, err := db1.Query(
"select Incident_Number, resolvedDate, Corporate_ID from ITSM.dbo.HPD_Help_Desk_Classic " +
"where resolvedDate in DATE(?)", // <--- See cast in SQL
jobDate)

关于sql - 无法将日期时间纪元转换为仅日期纪元格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52418315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com