使用Node + mssql,我需要获取此查询从SQL Server返回的日期的偏移量:
SELECT getutcdate() AT TIME ZONE 'UTC' AT TIME ZONE 'Mountain Standard Time'
问题是它来自已被解析为JavaScript Date()对象的mssql / tedious,该对象设置为脚本/主机的时区。我看不到任何方法可以告诉您原始值实际在哪个时区/偏移量。
Azure Data Studio等其他工具可以在表中正确显示DateTimeOffset列的原始值,包括显示存储的偏移量。
节点中的输出:
[ { value: 2020-03-21T03:07:54.193Z } ]
Azure Data Studio中的输出:
2020-03-20 21:07:22.9970000 -06:00
代码:
const sql = require('mssql');
sql.connect('mssql://sa:<password>@localhost?useUTC=false')
.then(() => {
const request = new sql.Request();
request.query(query,(err,result) => {
console.dir(result.recordset)
});
});