Cloudsearch 日期范围
Cloudsearch Date range
我有以下格式的云搜索文档,我正在使用简单的 queryParser。因此,当我搜索 'abc' 时,我得到了两个结果,因为两个文档包含名字 "abc"。如何将其提升到一个新的水平并向查询添加日期范围?比如,我想在开始 >= date1 和开始 < date2 的两个日期之间搜索 "abc"。我能想到的一种方法是在上传文档之前,将 started 字段转换为 timeinMillis,然后做一个范围。这是解决这个问题的唯一方法,还是我也可以为日期建立一个范围?
{
"id": "d48810e8-082a-4422-887c-a3a69aa95f3e",
"fields": {
"origin": [
"http://localhost:3006"
],
"firstname": [
"abc"
],
"started": [
"2017-03-30T15:45:03.848Z"
],
"lastname": [
"xyz"
]
}
},
{
"id": "47ae007e-41ec-4110-82f1-716d4e48670c",
"fields": {
"origin": [
"http://localhost:3006"
],
"firstname": [
"opq"
],
"lastname": [
"rst"
],
"started": [
"2017-01-09T20:00:47.264Z"
]
}
},
{
"id": "6a6df5be-9518-44f4-8b9d-62ff21c5e89c",
"fields": {
"origin": [
"http://localhost:3006"
],
"firstname": [
"abc"
],
"lastname": [
"xyz"
],
"started": [
"2017-01-18T19:09:01.318Z"
]
}
}
我有以下格式的云搜索文档,我正在使用简单的 queryParser。因此,当我搜索 'abc' 时,我得到了两个结果,因为两个文档包含名字 "abc"。如何将其提升到一个新的水平并向查询添加日期范围?比如,我想在开始 >= date1 和开始 < date2 的两个日期之间搜索 "abc"。我能想到的一种方法是在上传文档之前,将 started 字段转换为 timeinMillis,然后做一个范围。这是解决这个问题的唯一方法,还是我也可以为日期建立一个范围?
{
"id": "d48810e8-082a-4422-887c-a3a69aa95f3e",
"fields": {
"origin": [
"http://localhost:3006"
],
"firstname": [
"abc"
],
"started": [
"2017-03-30T15:45:03.848Z"
],
"lastname": [
"xyz"
]
}
},
{
"id": "47ae007e-41ec-4110-82f1-716d4e48670c",
"fields": {
"origin": [
"http://localhost:3006"
],
"firstname": [
"opq"
],
"lastname": [
"rst"
],
"started": [
"2017-01-09T20:00:47.264Z"
]
}
},
{
"id": "6a6df5be-9518-44f4-8b9d-62ff21c5e89c",
"fields": {
"origin": [
"http://localhost:3006"
],
"firstname": [
"abc"
],
"lastname": [
"xyz"
],
"started": [
"2017-01-18T19:09:01.318Z"
]
}
}