1
Doctrine ORM에 대한 Taggable 확장에 의해 자동으로 생성 된 쿼리입니다.Doctrine SQL 쿼리 : PostgreSQL에서 작동하지 않습니다.
SELECT t.id AS t__id, t.name AS t__name, COUNT(DISTINCT i.id) AS i__0,
(COUNT(DISTINCT i.id)) AS i__1
FROM taggable_tag t
LEFT JOIN cms__model__image_taggable_tag c ON (t.id = c.tag_id)
LEFT JOIN image i ON i.id = c.id
WHERE t.id IN
(SELECT doctrine_subquery_alias.id
FROM
(SELECT DISTINCT t2.id, (COUNT(DISTINCT i2.id)) AS i2__1
FROM taggable_tag t2
LEFT JOIN cms__model__image_taggable_tag c2 ON (t2.id = c2.tag_id)
LEFT JOIN image i2 ON i2.id = c2.id
GROUP BY t2.id HAVING i2__1 > 0
ORDER BY i2__1 DESC LIMIT 10) AS doctrine_subquery_alias)
GROUP BY t.id HAVING i__1 > 0
ORDER BY i__1 DESC
MySql을 사용할 때는 작동하지만 PostgreSQL에서는 작동하지 않습니다.
나는 column i2__1 not found
또는 column i__2 not found
입니다.
COUNT (DISTINCT)를 사용할 때 별칭이 허용되지 않습니까?
PostgreSQL에서이 쿼리를 어떻게 실행해야합니까?
고마워요, 그게 전부입니다. 이것은 Doctrine이나 PostgreSQL의 버젼에 버그입니까? 아니면이 구문은 PostgreSql에서 전혀 지원되지 않습니다. – takeshin
어떤 제안이 실제로 도움이 되었습니까? –
괄호를 제거해도 아무런 효과가 없었습니다. 별칭 대신 HAVINGs에서 COUNT를 반복해야했습니다 (느려 집니까?). 분명히, GROUP BY에서도 t.name이 필요합니다. – takeshin