Cosmosdb时间戳计算所需的查询



我的cosmosdb每天都会更新一些数据,看起来像

{
"Price": {
"For": "9070.040",
"From": "700.990"
},
"ArticleNumber": "71151004",
"ArticleNumberPartitionKey": "7115",
"ForStatus": "ACTIVE",
"id": "71151004",
"_rid": "ky1XAMpBiEoDAAAAAAAAAA==",
"_self": "dbs/ky1XAA==/colls/ky1XAMpBiEo=/docs/ky1XAMpBiEoDAAAAAAAAAA==/",
"_etag": ""1200f241-0000-0d00-0000-60c8dad00000"",
"_attachments": "attachments/",
"_ts": 1623775952
}

我的逻辑设置为24小时递归。我的问题是,如果在cosmosdb中添加任何新数据,我将无法获取过去24小时的数据。我想使用"_ts";只获取最后24小时的数据。知道怎么做吗?

尝试过这个,但没有得到所需的结果。

Int32 unixTimestamp = (Int32)(DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1))).TotalSeconds; 

在.NET中,以下内容将获得24小时前的unix时间:

long hoursAgo24 = DateTimeOffset.UtcNow.AddHours(-24).ToUnixTimeSeconds();

使用该值,您应该能够运行以下查询:

SELECT * FROM c
WHERE c._ts > @hoursAgo24

最新更新