Cosmos 文档查询以查找每种类型的最新记录

基兰

我有一个集合,我在其中存储了以下类timestamp及其最新版本location

public class TrackingInfo 
{
    [JsonProperty("id")]
    public string Id { get; set; }

    [JsonProperty("_partition_key")]
    public string _PartitionKey { get; set; }

    [JsonProperty("asset_id")]
    public string AssetId { get; set; }

    [JsonProperty("unix_timestamp")]
    public double UnixTimestamp { get; set; }

    [JsonProperty("timestamp")]
    public string Timestamp { get; set; }

    [JsonProperty("location")]
    public Point Location { get; set; }
} 

它被划分为_PartitionKey包含这样的构造:

tracking._PartitionKey = $"tracking_{tracking.AssetId.ToLower()}_{DateTime.Today.ToString("D")}";

看起来没有办法Group by在集合上做一个

有人可以帮我创建一个SQL查询文件查找每个最新的条目AssetId及其LocationTimnestamp数据记录时。

更新 1:

如果我将_PartitionKey每天更改为代表如下,该怎么办

tracking._PartitionKey = $"tracking_{DateTime.Today.ToString("D")}";

是否可以更轻松地获取所有资产及其最新跟踪记录?

亚历克斯·艾特

根据我的评论,我的建议是以不同的方式解决您的问题。

假设:您有大量的 assetId 并且事先不知道这些值:

  • 拥有一份代表您资产最新状态的文件
  • 拥有另一个代表资产位置事件的文档
  • 每当有新的位置事件时更新第一个文档
  • 您可以将两种类型的文档放在同一个集合中或将它们分开——这两种方法都有好处。我可能会把它们分开。

然后做一个查询“xxx 1km内有哪些资产”(查询空间类型

旁注:使用 assetId 作为 partitionKey 而不是组合键可能是个好主意。使用这样的键对查询非常不利

如果您只有很少的资产 ID,您可以使用它们通过使用和按时间戳字段排序来仅查找最新更新。这只会返回最后一项

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何:从Cosmos DB获取最新(最新)文档?

来自分类Dev

Azure Cosmos DB查询

来自分类Dev

在 Cosmos Db 中按类型过滤文档

来自分类Dev

Cosmos DB - 查询异构集合?

来自分类Dev

Azure 函数 - Cosmos DB 删除文档问题

来自分类Dev

使用不带分区键说明的查询从Cosmos删除文档

来自分类Dev

Azure Cosmos设置历史记录

来自分类Dev

作为查询不支持cosmos db

来自分类Dev

如何为Cosmos DB查询解释`RequestCharge`?

来自分类Dev

Cosmos DB SQL API最大查询限制

来自分类Dev

不支持Azure Cosmos DB查询

来自分类Dev

查询以从Cosmos DB获取详细信息

来自分类Dev

在 cosmos db 中查询大型集合

来自分类Dev

Cosmos DB 扇出查询问题

来自分类Dev

如何为 Cosmos DB 编写 SQL 查询?

来自分类Dev

查询数组数据的 Cosmos db 集合

来自分类Dev

根据 Azure Cosmos DB 中文档的属性获取最新文档

来自分类Dev

在C#DBML中获取具有最新/更大日期的每种类型的记录

来自分类Dev

无法通过sdk从cosmos db中删除特定文档?

来自分类Dev

使用无法在Cosmos中使用的数组内容搜索文档

来自分类Dev

如何为Cosmos db中的每个文档设置字段?

来自分类Dev

在 Cosmos DB 集合中手动创建文档

来自分类Dev

Cosmos 文档 - 存储过程:保存并执行按钮呈灰色显示

来自分类Dev

使用 PowerShell (SQL API) 在 Cosmos DB 中插入文档

来自分类Dev

Cosmos DB - 根据子数据选择根文档

来自分类Dev

带有 Cosmos DB 文档字段的参数化输入

来自分类Dev

使用 SQL 查询查询 Cosmos DB Change Feed

来自分类Dev

多个文档的Azure Cosmos DB SDK v3查询失败:网关无法检索查询计划

来自分类Dev

Azure Cosmos DB表中查找表的分区键

Related 相关文章

热门标签

归档