问题标签 [sphinxql]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Sphinx 正确地将 json 数组与所有值匹配
我正在尝试匹配具有包含所有给定元素的 json 数组的行。
示例搜索项:
预期的匹配行:
不应该匹配:
我将项目存储在作为 json 属性索引的 json 文本中。
表格示例:
我的 sphinx.conf 是这样的:
我尝试使用以下没有结果:
还尝试了以下方法,它返回错误的结果:
当我这样做时,我得到了预期的结果:
但它会大大减慢查询速度,并使查询的构建更加复杂。
我究竟做错了什么?
在 Sphinx 中执行此查询的正确方法是什么?
sphinx - SphinxSearch:复杂的有语句
我有person_content
下一列的表格:
- person_id INT
- content_id INT
- is_star BOOL
我需要使用 SphinxQL选择所有与 N 以上相关content_ids
或有标志的人。is_star
我的问题的第一部分可以使用COUNT
,GROUP BY
和来解决HAVING
:
is_star
是否可以在请求中添加条件?或者,例如,以某种方式添加is_star * N
到t
?
sphinx - 狮身人面像与 MATCH 不同的结果
所以,我有一种情况,我希望没有 MATCH 和 MATCH 所有项目都能得到相同的结果,但得到的结果却不一致。
这些是数据库中的当前类型:
如果我不指定任何标准:
所有类型都有 MATCH:
是我还是应该两个查询都返回相同的确切计数?
编辑:
经过一番挖掘,我发现我的一种“类型”中有连字符。
所以像:
将导致“type1”或“type2”,但类似于:
将是“type1”或“type”和“two”。
现在我尝试将类型转换为 INT 字段并尝试执行以下操作:
但我得到了错误:
有任何想法吗?
sphinx - Sphinxql - 过滤具有
我正在尝试使用 HAVING 过滤查询,但我得到了这个错误:
我正在使用 Sphinx 2.2.6-id64-release,它支持 HAVING
这是我的索引,如果它确实重要(application_id 属性用于按 id 分组)。
php - multi_query 在 mysqli 中无法通过 sphinxql 更新实时 sphinx 索引
我们正在使用 Sphinx 实时索引并通过 PHP 的 mysqli 驱动程序与它们对话。单个查询工作正常,但我们正在尝试使用 multi_query 实现批量更新过程。
查询如下所示:
(这是在用分号内爆之后,为了便于阅读添加了换行符)
我们得到的错误是:
如果我将查询复制/粘贴到 mysql CLI 客户端,没问题:
这是PHP代码。是来自http://foolcode.github.io/SphinxQL-Query-Builder/$conn
的 Connection 类的一个实例,但我们正在使用下面的 mysqli 连接直接使用:$conn->getConnection()
我尝试使用multiQuery()
SphinxQL Query Builder 连接类中的函数,结果相同。
声称分号意外的错误消息对我来说似乎是最奇怪的部分。如果它想要 $end,这是否意味着它不支持多个查询?如果它愿意通过 mysql 客户端进行相同的查询,为什么不呢?
mysql - mysqli 无法设置编码
我一直在尝试为 mysql 连接到 utf8 设置编码
但它仍然是 latin1;
我只需要使用 mysqli,因为现在我使用的是 SphinxQL 查询生成器https://github.com/FoolCode/SphinxQL-Query-Builder
sphinx - 在 SphinxQL 中搜索空字符串
我在 Sphinx 索引中有一个字符串字段“extra_data”,其中包含逗号分隔格式的数据(例如“绿色”、“红色”、“绿色、红色”……)。我需要选择查找行: 1. extra_data 是'green' 2. or extra_data 是'red' 3. or extra_data 是空的
所以我可以写查询:
但是我应该如何编写查询来找到空的 extra_data ('') 呢?
sphinx - SphinxQL 错误非常基本
这是我的查询:
这是我得到的错误:
怎么了?我已经将我的查询简化到了极致,但它仍然不起作用。
感谢帮助!;)
sphinx - Sphinx PHP API EscapeString() 函数不适用于 SphinxQL?
我在 Sphinx PHP API 代码中找到了以下函数:
但是,它似乎无法正常工作,因为当我在查询中使用带有某些字符的字符串时,Sphinx 会引发异常。
一个例子是引号字符"
。EscapeString()
在它前面放一个反斜杠\
,但是 Sphinx 抛出一个异常说:
致命错误:未捕获的异常“PDOException”,带有消息“SQLSTATE [42000]:语法错误或访问冲突:1064 index my_index:语法错误,在..
如果我再添加两个反斜杠,使其成为\\\"
,则不会引发错误。
这是怎么回事?为什么不EscapeString()
工作?
sphinx - SphinxQL 不适用于准备好的语句?
我在 Sphinx 论坛上发现了几个讨论这个问题的帖子:
http://sphinxsearch.com/forum/view.html?id=5974
我创建数据库连接的功能:
这工作正常:
没有返回结果:
当我将值绑定到准备好的语句时,不会返回任何结果。