我想使用 Golang 实现以下 Elasticsearch 查询。
{
"query": {
"bool": {
"must": {
"range": { "sales_start_date": { "gte": "2018-07-01T00:00:00.000Z" } }
},
"filter": {
"terms": { "item_holder_id": [2, 7, 9] }
}
}
}
}
'
我当前的代码如下(我正在使用http://github.com/olivere/elastic库)。
query := elastic.NewBoolQuery()
query = query.Must(elastic.NewRangeQuery("sales_start_date").Gte(date).TimeZone("+09:00"))
query = query.Filter(elastic.NewTermsQuery("item_holder_id", ihids))
ihids 是一个[]int. 当我执行此代码时出现错误
elastic: Error 400 (Bad Request): [terms] unknown token [END_ARRAY] after [item_holder_id] [type=parsing_exception]
经过一些研究,我发现我需要这样写
elastic.NewTermsQuery("item_holder_id", "1", "2")
但作为 Golang 的新手,我想我缺少一些基本概念。我怎样才能传递这样的值数组?
感谢您提供任何可以帮助我的信息!
拉莫斯之舞
慕无忌1623718
温温酱
相关分类