sphinx - Sphinx:sphinxql 中的 OR 运算符
问题描述
我的数据库中有一个日期字段(Start_date),它在 sphinx 中将其索引为 sql_field_string,其格式如下:2000-12-12。当我想在该字段上进行搜索时,我会提交如下查询:
select * from all where match ('@Start_date 2000-12-12');
并且它正在工作,但是在使用这样的 OR 运算符提交查询时遇到问题,它不会返回任何结果,而实际上有很多结果:
select * from all where match ('@Start_date 2000-12-12 | 1999-12-12');
当我使用括号作为值时,问题就解决了!
select * from all where match ('@Start_date (2000-12-12) | (1999-12-12)');
为什么会这样?
(我在我的 charset_table 中添加了“-”字符)。
来自 sphinx.conf 文件:
dict = crc
min_infix_length=3
解决方案
推荐阅读
- python - 最近成员附加属性分析
- python - 如何使用 if 条件在循环中增加迭代器?
- ssis - catalog.executions 中 process_id 的值从何而来?
- php - 为什么我不能在我的 PHP 网站上上传大文件?
- jquery - 在 Google Developer Network 标签中找不到网络调用的来源
- java - 为什么这个只有静态块的奇怪java代码会编译?
- buildfire - 在 BuildFire myPlugin SDK 的自定义插件中创建自定义链接
- swift - 在 SK3DNode 中添加 SCNLight
- python - python虚拟环境应该与docker镜像一起使用吗?
- python - 如何使用 pandas 将 oracle clob 列转换为列表