问题标签 [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.

0 投票
2 回答
1616 浏览

php - Sphinx 正确地将 json 数组与所有值匹配

我正在尝试匹配具有包含所有给定元素的 json 数组的行。

示例搜索项:

预期的匹配行:

不应该匹配:

我将项目存储在作为 json 属性索引的 json 文本中。

表格示例:

我的 sphinx.conf 是这样的:

我尝试使用以下没有结果:

还尝试了以下方法,它返回错误的结果:

当我这样做时,我得到了预期的结果:

但它会大大减慢查询速度,并使查询的构建更加复杂。

我究竟做错了什么?

在 Sphinx 中执行此查询的正确方法是什么?

0 投票
1 回答
84 浏览

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 * Nt?

0 投票
1 回答
546 浏览

sphinx - 狮身人面像与 MATCH 不同的结果

所以,我有一种情况,我希望没有 MATCH 和 MATCH 所有项目都能得到相同的结果,但得到的结果却不一致。

这些是数据库中的当前类型:

如果我不指定任何标准:

所有类型都有 MATCH:

是我还是应该两个查询都返回相同的确切计数?

编辑:

经过一番挖掘,我发现我的一种“类型”中有连字符。

所以像:

将导致“type1”或“type2”,但类似于:

将是“type1”或“type”和“two”。

现在我尝试将类型转换为 INT 字段并尝试执行以下操作:

但我得到了错误:

有任何想法吗?

0 投票
1 回答
674 浏览

sphinx - Sphinxql - 过滤具有

我正在尝试使用 HAVING 过滤查询,但我得到了这个错误:

我正在使用 Sphinx 2.2.6-id64-release,它支持 HAVING

这是我的索引,如果它确实重要(application_id 属性用于按 id 分组)。

0 投票
2 回答
718 浏览

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 客户端进行相同的查询,为什么不呢?

0 投票
2 回答
123 浏览

mysql - mysqli 无法设置编码

我一直在尝试为 mysql 连接到 utf8 设置编码

但它仍然是 latin1;

我只需要使用 mysqli,因为现在我使用的是 SphinxQL 查询生成器https://github.com/FoolCode/SphinxQL-Query-Builder

0 投票
1 回答
838 浏览

sphinx - 在 SphinxQL 中搜索空字符串

我在 Sphinx 索引中有一个字符串字段“extra_data”,其中包含逗号分隔格式的数据(例如“绿色”、“红色”、“绿色、红色”……)。我需要选择查找行: 1. extra_data 是'green' 2. or extra_data 是'red' 3. or extra_data 是空的

所以我可以写查询:

但是我应该如何编写查询来找到空的 extra_data ('') 呢?

0 投票
1 回答
175 浏览

sphinx - SphinxQL 错误非常基本

这是我的查询:

这是我得到的错误:

怎么了?我已经将我的查询简化到了极致,但它仍然不起作用。

感谢帮助!;)

0 投票
1 回答
576 浏览

sphinx - Sphinx PHP API EscapeString() 函数不适用于 SphinxQL?

我在 Sphinx PHP API 代码中找到了以下函数:

但是,它似乎无法正常工作,因为当我在查询中使用带有某些字符的字符串时,Sphinx 会引发异常。

一个例子是引号字符"EscapeString()在它前面放一个反斜杠\,但是 Sphinx 抛出一个异常说:

致命错误:未捕获的异常“PDOException”,带有消息“SQLSTATE [42000]:语法错误或访问冲突:1064 index my_index:语法错误,在..

如果我再添加两个反斜杠,使其成为\\\",则不会引发错误。

这是怎么回事?为什么不EscapeString()工作?

0 投票
1 回答
814 浏览

sphinx - SphinxQL 不适用于准备好的语句?

我在 Sphinx 论坛上发现了几个讨论这个问题的帖子:

http://sphinxsearch.com/forum/view.html?id=5974

我创建数据库连接的功能:

这工作正常:

没有返回结果:

当我将值绑定到准备好的语句时,不会返回任何结果。