Sphinxsearch: 1064 не может использовать HAVING с атрибутом, не связанным с GROUP BY - PullRequest
0 голосов
/ 27 мая 2019

Я использую пример конфигурации sphinxsearch и тестовую базу данных, которая поставляется вместе с загрузкой для версии 3.1.1

source src1
{
type            = mysql

sql_host        = localhost
sql_user        = root
sql_pass        =
sql_db          = test
sql_port        = 3306  # optional, default is 3306

sql_query       = \
    SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content \
    FROM documents

sql_attr_uint       = group_id
sql_attr_timestamp  = date_added
}

При запуске этого:

$array = $sphinx->prepare("SELECT date_added,group_id FROM test1 GROUP BY group_id HAVING group_id > 1");
$array->execute();

Я получаю эту ошибку:

SQLSTATE[42000]: Syntax error or access violation: 1064 can not use HAVING with attribute not related to GROUP BY

1 Ответ

2 голосов
/ 27 мая 2019

Используйте where condition вместо having, поскольку вы не использовали aggregation, также group by в этом случае не требуется

SELECT date_added,group_id 
FROM test1 
where group_id>1
...