1

以下是我的文档的搜索定义。我有字段“expire”,它是我文档中的时间戳。现在我想使用 yql 查询来搜索文档 if isActive="1" 和 test.expire - now() > 0。我可以通过查询来实现吗?

search test {
    document test {
                field Id type string {
                    indexing: index|summary
                }

                field isActive type string {
                    indexing: index|summary
                }

                field expire type long {
                   indexing: index | summary
                }

                field detail type string {
                   indexing: summary
                }
}

}

如果是,那么我的查询是什么?如何在查询中应用条件?请帮助

4

1 回答 1

1

对此的 YQL 是

?query=select * from test where (isActive contains "1" and expire > nowTimestamp);&type=yql

你不能使用 now() 所以你需要自己插入时间戳。

您还可以在 Searcher 组件中构造查询(绕过构造 YQL 字符串的需要)。

于 2018-11-30T16:41:31.947 回答