【问题标题】:Index movie duration索引电影时长
【发布时间】:2019-09-09 03:06:43
【问题描述】:

我试图弄清楚我打算如何存储我的电影持续时间字段(例如,02:20:13 用于 2 小时、20 分钟和 13 秒长的电影),以便搜索索引的用户可以电影时长方面。

就像在方面一样,对于时长在 1 到 2 小时之间的电影,他们可以从 01:00:00 到 02:00:00 选择。我尝试将持续时间存储为 DateTime 值并将其编入索引,但其中包括似乎与我想要实现的目标无关的日期。

【问题讨论】:

    标签: azure-cognitive-search azure-search-.net-sdk


    【解决方案1】:

    可能最简单的解决方案是将持续时间存储为Edm.Int32 类型的字段,其中字段值表示以秒为单位的总持续时间。虽然您可以使用 Edm.DateTimeOffset 来表示持续时间,但与使用普通整数相比,它并没有真正为您购买任何额外的功能。这基本上是一种权衡:如果您使用日期/时间,您的应用程序必须忽略日期部分;如果您使用整数,您的应用需要 UI 逻辑将它们呈现为 hh:mm:ss 格式的持续时间。

    【讨论】:

    • 我考虑过,这似乎是一种解决方法,不是吗?如果我索引整数集,Azure 搜索已经内置了用于创建范围的逻辑。我想按照“设计”来做。
    • 所以你想要一个 Edm.Duration 数据类型?
    • 请随时在我们的用户语音页面上添加提案:feedback.azure.com/forums/263029-azure-search 同时,请将答案标记为已接受或让我知道如何澄清它。
    • 抱歉回复晚了,这当然是问题的正确答案:)
    猜你喜欢
    • 1970-01-01
    • 2020-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-18
    • 2021-06-19
    • 2016-10-01
    • 2017-10-10
    相关资源
    最近更新 更多