Estoy intentando generar una tabla de resultados con la última fecha del curso completada para cada código de curso, así como el último código de curso completo para cada empleado . A continuación es mi consulta:MAX() y MAX() OVER PARTITION BY produce error 3504 en Teradata Query
SELECT employee_number,
MAX(course_completion_date)
OVER (PARTITION BY course_code) AS max_course_date,
MAX(course_completion_date) AS max_date
FROM employee_course_completion
WHERE course_code IN ('M910303', 'M91301R', 'M91301P')
GROUP BY employee_number
Esta consulta produce el siguiente error:
3504 : Selected non-aggregate values must be part of the associated group
Si quito el MAX() OVER (partición POR ...) de línea, la consulta se ejecuta muy bien, por lo He aislado el problema en esa línea, pero después de buscar en estos foros y en Internet no puedo ver lo que estoy haciendo mal. ¿Alguien puede ayudar?
porque usted está utilizando de nuevo con referencia a la MAX, SQL ve estas como funciones analíticas, no como agregados. –