azure 时间戳过滤选择错误的日期

标签 azure timestamp azure-storage azure-web-app-service azure-table-storage

我正在使用 azure 表存储并尝试仅过滤某一特定日期的记录。

datetime filterDate = '3/29/2016 12:00:00 AM'

我尝试了以下查询,但它提取了第 29 日和第 30 日的记录。可能是什么问题?

 var queryToday = TableQuery.GenerateFilterConditionForDate("Timestamp", QueryComparisons.GreaterThanOrEqual, filterDate);
            var querySelectedDate = TableQuery.CombineFilters(queryToday, TableOperators.And, TableQuery.GenerateFilterConditionForDate("Timestamp", QueryComparisons.LessThan, filterDate.AddDays(1)));

我调试发现过滤字符串为

(Timestamp ge datetime'2016-03-29T07:00:00.0000000Z') and (Timestamp lt datetime'2016-03-30T07:00:00.0000000Z')

最佳答案

看起来像是时区问题。您可能想要在 3/29 午夜到 3/30 午夜之间进行搜索,但它却在 3/29 上午 7 点到 3/30 上午 7 点之间进行搜索。

您居住在 UTC-7 时区(如 MDT)还是 UTC +7 时区(如 ETC)?该 API 很可能会尝试补偿您/您的网站所在的时区以及它假定时间戳所在的时区(可能是 UTC 时间)

关于 azure 时间戳过滤选择错误的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36320408/

相关文章:

azure - 更改Azure存储模拟器的运行IP

azure - 如何从 Azure Batch 访问 Azure 数据库?

c++ - 时间戳转换错误

azure - 在 Azure VM 中,如何在不使用存储帐户访问 key 的情况下为 azure blob 存储生成 SAS token ?

azure-storage - Azure 云服务部署错误

c# - 创建新的 HiveConnection 时加载 Microsoft.WindowsAzure.Storage 出现异常

azure - 将 Golang 环境变量注入(inject) Azure Pipeline

sql - Azure SQL : Modify table data via UI instead of writing SQL query

java - 使用spring mongo查询oplog时间戳

MySQL 数据类型 - 与 DATETIME 条目相比,分别存储 DATE 类型和 TIME 类型是否可以为每条记录节省 2 个字节?