1

$result 是一个数组

$sphinx_ranked = SphinxQL::create($conn)->select('*')->from('jobs')->where('id', 'IN', $result)->execute();

执行后出现错误

[1064] index jobs: unsupported filter type '(filter-type-6)' on @id [ SELECT * FROM jobs WHERE id IN ('57', '59')]

如果我试试这个

SELECT * FROM jobs WHERE id IN (57,59);

然后这行得通。但我希望传递动态值。任何帮助,将不胜感激。

4

1 回答 1

0

Sphinx 需要更准确的方法来控制变量类型。接下来试试:

$sphinx_ranked = SphinxQL::create($conn)
    ->select('*')
    ->from('jobs')
    ->where('id', 'IN', array_map('intval', $result)) // <- int[] instead of string[]
    ->execute(); 
于 2017-08-23T13:20:51.060 回答