Sobes.tech
Middle

¿Cómo estructurar una consulta con una tabla intermedia para la fecha máxima del curso?

sobes.tech AI

Respuesta de la IA

Para obtener la fecha máxima del curso utilizando una tabla intermedia, se puede aplicar una consulta SQL con agregación y JOIN.

Supongamos que hay tablas:

  • courses (id, nombre)
  • course_dates (course_id, fecha, precio)

La tarea es obtener, para cada curso, el registro con la fecha máxima.

Ejemplo de consulta:

SELECT c.id, c.nombre, cd.fecha, cd.precio
FROM courses c
JOIN course_dates cd ON c.id = cd.course_id
JOIN (
    SELECT course_id, MAX(fecha) AS max_fecha
    FROM course_dates
    GROUP BY course_id
) max_dates ON cd.course_id = max_dates.course_id AND cd.fecha = max_dates.max_fecha;

Aquí:

  • En la subconsulta max_dates, se selecciona la fecha máxima para cada curso.
  • Luego, la consulta principal une los cursos con las fechas y filtra por la fecha máxima.

Este enfoque permite obtener datos actualizados con la fecha máxima del curso, usando una tabla intermedia.