Error en SubQuery anidado en DQL: la clase '(' no está definida
Tengo un DQL como el siguiente:
SELECT at, count(at.id) FROM AccountTriple at JOIN at.property p JOIN at.account ac WHERE p.create_analytics = '1' GROUP BY at.property, at.value, ac.service
Como puede ver, tiene tres uniones. Como 'at' y 'ac' ambos tienen gran cantidad de datos. En un intento por optimizarlo, estoy tratando de mover la comprobación "p.create_analytics = '1'" antes de unirme a 'ac' para darle un conjunto de datos más pequeño para unir. Estoy tratando de lograr algo como esto:
SELECT at, count(at.id) FROM ( SELECT at FROM AccountTriple at JOIN at.property p WHERE p.create_analytics = '1' ) JOIN at.account ac GROUP BY at.property, at.value, ac.service
Pero de alguna manera, mi sintaxis no funciona. Un mensaje de error se muestra a continuación:
Error semántico] línea 0, col 29 cerca de '(SELECCIONAR en DE': Error: Clase '(' no está definido.
No encontré un ejemplo similar en ningún otro lugar también. ¿Alguien puede ayudar a solucionar esta consulta DQL para que funcione? Gracias por adelantado.