我对正确显示历史数据感到困惑:
我有什么:
我需要什么:
我希望有一些指南可以向我解释为实现这一切我必须采取的步骤。谢谢!
答案 0 :(得分:0)
在客户端代码中定义两个变量:
var startTime = moment().startOf('day').utc().format();
var untilTime = moment().add(1, 'day').startOf('day').utc().format();
现在,您可以根据UTC获得查询范围。通过表单或任何机制将它们发送到服务器,然后运行查询。
查询时,请使用半开放范围:recordTime >= startTime AND recordTime < untilTime
当您将结果返回给客户端时,您将使用UTC格式,因此转换为本地时间如下:
moment.utc(theData).local().format()
根据需要调整输入/输出格式。
答案 1 :(得分:0)
下次,存储到TIMESTAMP
而不是DATETIME
。
TIMESTAMP
将根据客户端时区插入的日期+时间转换为UTC进行存储。后续的SELECT
会根据读者的时区进行重新转换。
这样,实现目标就不需要代码了(正如我所认为的那样)。