sql >> Base de Datos >  >> RDS >> Mysql

MySQL:agregue dinámicamente columnas a los resultados de la consulta

Aquí hay algo de SQL inteligente. Selecciona 'ÚLTIMO' para la primera fila y 'ANTERIOR' para todos los demás (si tenemos más de uno).

SELECT IF(@rownum = 0, 'LATEST', 'PREVIOUS') update_time, update_id, 
       title, content, date, (@rownum := @rownum + 1) r
FROM updates, (SELECT @rownum := 0) dummy
WHERE project_id = 2
ORDER BY date DESC
LIMIT 2

También agrega otra columna al conjunto de resultados. Espero que no sea un problema.