像“IN”这样的等号运算符是什么?用于 LUCENE.NET 的 SQL Server

发布于 2024-12-01 08:23:28 字数 183 浏览 0 评论 0原文

我如何在 LUCENE.NET 中获得“IN”(SQL Server 的)功能?

假设存在一些记录,其 ID 为:a,b,c,d,e,f,..

所以我想使用 Lucene 获取 ('a','b','c') 中的记录。网。

请让我知道如何在 Lucene.net 中编写此查询。

提前致谢。

How can i get " IN " (of SQL Server) functionality in LUCENE.NET?

Suppose assume that some records are exist with ID : a,b,c,d,e,f,..

So I want to get the records which are in ('a','b','c') by using Lucene.net.

Please let me know how can i write this query in Lucene.net.

Thanks in Advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

夜巴黎 2024-12-08 08:23:28

您需要将 BooleanQuery 与 SHOULD 子句一起使用。

BooleanQuery query = new BooleanQuery();
query.Add(new TermQuery(new Term("ID", "a"), Occur.SHOULD));
query.Add(new TermQuery(new Term("ID", "b"), Occur.SHOULD));
query.Add(new TermQuery(new Term("ID", "c"), Occur.SHOULD));

这意味着任何结果都必须具有 ID = a、b 或 c。

You need to use a BooleanQuery with the SHOULD clause.

BooleanQuery query = new BooleanQuery();
query.Add(new TermQuery(new Term("ID", "a"), Occur.SHOULD));
query.Add(new TermQuery(new Term("ID", "b"), Occur.SHOULD));
query.Add(new TermQuery(new Term("ID", "c"), Occur.SHOULD));

This means that any result must have either ID = a, b, or c.

但可醉心 2024-12-08 08:23:28

查询 q = new QueryParser("ID", new YourAnalyzer()).Parse("abc d") :)

Query q = new QueryParser("ID", new YourAnalyzer()).Parse("a b c d") :)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文