2015-01-19 6 views
0

내가 갖는 쿼리를 필터링하기 위해 노력하고있어을 갖는 필터링하지만, 모두가 내가이 오류를 얻을 : 나는 스핑크스 2.2.6-id64 릴리스를 사용하고Sphinxql -

mysql> SELECT id FROM related_tags GROUP BY application_id HAVING COUNT(*)=10; 
ERROR 1064 (42000): sphinxql: syntax error, unexpected IDENT, expecting $end near 'HAVING COUNT(*)=10' 

를, 그것은 HAVING 지원

문제가되는 경우이 인덱스입니다 (application_id 특성은 id로 그룹화하는 특성 임).

sql_query = \ 
     SELECT `id`, `id` as `application_id`, `clear_title`\ 
     FROM `applications`\ 
     WHERE `id`>=$start AND `id`<=$end 

sql_query_range = SELECT MIN(id),MAX(id) FROM applications 

sql_attr_uint = application_id 
sql_attr_multi = uint tag_id from query; \ 
    select application_id, tag_id \ 
    from application_tag_stemmed2; 

답변

0

가상 속성, 임의 표현식을 HAVING 절 자체에서 사용할 수 없도록 설정해야한다고 생각합니다.

SELECT id,COUNT(*) AS cnt FROM related_tags GROUP BY application_id HAVING cnt=10; 
+0

나는 이것을 시도했는데 가상 가치를 만들려고 할 때 오류를 표시하기도합니다. 그것이 나를 허용 할 수있는 유일한 것은 GROUP BY – Null

+0

mysql> SELECT id, count (*) from FROM related_tags GROUP BY application_id; 오류 1064 (42000) : sphinxql : 예기치 않은 COUNT, 'ID FROM related_tags GROUP BY application_id'근처에 IDENT가 있습니다. – Null

+0

예약어로 계산하지 마십시오. 또는 백틱을 시도해야하는 경우 – barryhunter