Fui perguntar a outro lado e penso que responderam da mesma forma à qual acabaste por chegar.
Disseram-me que o ID só serve para termos uma referência única, nada mais.
Para se ir buscar as últimas cinco notícias pode-se fazer assim:
SELECT * FROM noticias ORDER BY ID desc LIMIT 5;Também me avisaram que isto pode não ser totalmente eficaz, pois apesar de o ID ser autoincrement não se tem nenhuma restrição que te garanta que o o ID maior corresponde a última notícia.
Se tivessemos um backoffice de edição de notícias existentes e usassemos um DELETE e um INSERT em vez de um update já tinhamos problemas.
É aconselhável ir buscar os 5 ids maiores e não nos preocuparmos com o resto.
Também me deram a dica de como fazer isto como mandam os livros.
1.Cria-se um campo chamado por exemplo DATA_E_HORA do tipo TIMESTAMP.
(Um timestamp é um segundo no tempo e é muito fácil de usar).
2.Quando se fizer um INSERT não definimos o campo DATA_E_HORA, pq o MySQL, se esse campo for nulo, põe lá o valor da data/hora actual.
Sendo assim temos sempre a hora em que a notícia foi inserida.
3. Desta forma o pedido seria:
SELECT * FROM noticias ORDER BY DATA_E_HORA desc LIMIT 5;PS: Isto tudo foi me indicado por outra pessoa, no caso o pedrotuga. Os agradecimentos são para ele.
