Hola amigos,
Estoy intentando hacer una consulta que une varios campos de varias tablas pero que de una tabla en concreto con los campos 'AnioContrato' y 'FchInicio' me haga el MAX(FchInicio) y me muestre el AnioContrato de esa FchInicio.
El problema es que me pide meter el AnioContrato en el GROUP BY (con lo que no me descarta las FchInicio de otros años) o meterlo en una función de agregado (Lo que causa que el AnioContrato se "calcule" en vez de usarse el asociado a FchInicio)
Les dejo el código hasta ahora
Código SQL:
Ver originalSELECT OfcContratosFormacion.IDContratoFormacion,
OficinasISC.Nombre AS Asesoria,
AC_Empresa.Nombre AS Empresa,
AC_Alumno.Nombre AS Trabajador,
MAX(A.FchInicio) AS FchInicio,
B.AnioContrato
FROM AC_Alumno
INNER JOIN AC_Empresa
ON AC_Alumno.IDACEmpresa = AC_Empresa.IDACEmpresa
INNER JOIN OfcContratosFormacion
ON AC_Alumno.IDACAlumno = OfcContratosFormacion.IDACAlumno
AND AC_Empresa.IDACEmpresa = OfcContratosFormacion.IDACEmpresa
INNER JOIN OfcContratosFormacion_DatosCtto A
ON OfcContratosFormacion.IDContratoFormacion = A.IDContratoFormacion
INNER JOIN OficinasISC
ON AC_Empresa.IDOficina = OficinasISC.IDOficina
AND OfcContratosFormacion.IDOficina = OficinasISC.IDOficina
INNER JOIN OfcContratosFormacion_DatosCtto B
ON A.FchInicio = B.FchInicio
AND A.IDContratoFormacion = B.IDContratoFormacion
WHERE A.FchInicio IS NOT NULL
GROUP BY OfcContratosFormacion.IDContratoFormacion,
OficinasISC.Nombre,
AC_Empresa.Nombre,
AC_Alumno.Nombre,
B.AnioContrato
¿Alguna idea de que puedo hacer?