我想知道如何在epoch datetime字段(例如1362960734565)之后有一个毫秒可以轻松搜索(例如在1234560123456之后创建的所有文档),或者我是否需要实现某种方法来分割日期或放置它是另一种格式,因为它不能用作NUMBER或DATE。
根据Google针对搜索API的文档(https://developers.google.com/appengine/docs/java/search/overview#Describing_Data_with_Documents):
文件字段
每个文档都包含将包含特定类型内容的字段。内容 类型由“字段”构建器标识,用于设置字段的内容类型,如下所示:
- 文字:纯文字
- HTML:HTML格式的文字
- ATOM:被视为单个令牌的字符串
- NUMBER:2,147,483,647和-2,147,483,647之间的数值(浮点数或整数)
- 日期:没有时间成分的日期
- GEO_POINT:基于纬度和经度的区域设置
答案 0 :(得分:5)
我目前的解决方案:
将时间戳作为DateTime,我将日期存储在Date字段类型中,然后我得到当天的毫秒数并将其存储为数字。
然后,我使用针对这两个字段的数字运算符构建搜索API的查询,例如:
dayLastUpdated> = 2013-3-13 AND timeLastUpdated> 82884753