Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

MySQL:adicionar colunas dinamicamente aos resultados da consulta


Aqui está um SQL inteligente. Ele seleciona 'LATEST' para a primeira linha e 'PREVIOUS' para todas as outras (se tivermos mais de uma delas).
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

Também adiciona outra coluna ao conjunto de resultados. Espero que não seja um problema.