sphinx SQL 搜索:排除项目

发布于 2024-10-07 05:37:31 字数 302 浏览 3 评论 0原文

我的 sphinx 搜索是这样的:

$result = $cl->query($_REQUEST['term'], 'myindex');

但我希望能够过滤掉与字符串值不匹配的某些结果,例如:

$result = $cl->query($_REQUEST['term'] . " and somestringcol <> ''", 'myindex');

是否有一些正确的方法可以使用 sphinx PHP API 来执行此操作?

Have my sphinx search going like so:

$result = $cl->query($_REQUEST['term'], 'myindex');

But I'd like to be able to filter out certain results that don't match a string value, something like:

$result = $cl->query($_REQUEST['term'] . " and somestringcol <> ''", 'myindex');

Is there some proper way to do this using the sphinx PHP API?

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

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

发布评论

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

评论(2

江挽川 2024-10-14 05:37:31

您可以使用 SetFilter() 为您定义的属性指定过滤器。

请参阅:http://www.sphinxsearch.com/docs/manual-1.10.html #属性

You can use SetFilter() to specify a filter on an attribute you defined.

See: http://www.sphinxsearch.com/docs/manual-1.10.html#attributes

我们的影子 2024-10-14 05:37:31

正如 Langdon 所说,您可以使用 SetFilter(),但您也可以使用扩展搜索语法中提供的字段搜索运算符,以更具体地搜索索引而不是与其关联的属性。

$result = $cl->query($_REQUEST['term'] . " @somestringcol -term", 'myindex');

sphix 的文档提供了许多很好的示例: http://sphinxsearch.com/docs/1.10/扩展语法.html

As Langdon, metions you can use the SetFilter(), but you may also be able to use the field search operator which is available in the extended search syntax to get a little bit more specific with searching your index rather than attributes associated with it.

$result = $cl->query($_REQUEST['term'] . " @somestringcol -term", 'myindex');

The documentation for sphix provides many good examples: http://sphinxsearch.com/docs/1.10/extended-syntax.html

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