azure-cognitive-search - 查找没有时间部分的 Azure 搜索日期
问题描述
我找不到仅使用日期从 Azure 搜索中获取日期的方法。
索引中的日期如下:“2019-10-15T18:00:00Z”、“2019-10-22T18:00:00Z”、“2019-10-29T18:00:00Z”
如果我尝试StartDate/any(s: s eq 2019-10-15T18:00:00Z)
我会得到结果但StartDate/any(s: s eq 2019-10-15)
没有任何结果
我已经尝试过date
像这样使用 OData 函数:StartDate/any(s: date(s) eq 2019-10-15)
但我收到错误“不支持函数‘日期’”。
有没有办法在不使用时间部分的情况下获取日期?
解决方案
从 api-version 2019-05-06-Preview 开始,将不再支持在 Azure 搜索的筛选器中使用日期文字。这是我们从未打算支持的“意外功能”。您没有得到任何结果的原因是因为从Edm.Date
to的隐式转换Edm.DateTimeOffset
假定时间为 UTC 午夜,而索引中的日期是 UTC 下午 6 点。
我们建议在过滤器中明确提供时间和偏移量(或 Z 表示 UTC)以避免此问题。
如果您希望 Azure 搜索本机支持类型的字段和筛选器Edm.Date
,请投票支持此用户语音建议。
推荐阅读
- azure - 我可以在 AKS 上使用 Azure 应用服务域吗?
- java - 无法解析 pom.xml 中的符号“webdriver.chrome.driver”
- ruby - 为 Sharetribe 配置 SMTP
- python - 用 scipy 和 pandas 在 python 中绘制山峰和山谷
- django - React Django REST框架会话没有持久化/工作
- php - 路由:检查 Laravel 中是否存在会话
- javascript - 通过 jquery 设置时,Django url 模板标签无法解析
- angular - 如果我没有收到订阅,订阅会引发错误吗?
- android - 无法解析 putextra 方法
- python - matplotlib 在鼠标移动时绘制高 CPU