quarta-feira, 15 de agosto de 2018

Como selecionar matérias mais recentes em seu site com MySQL


Hoje veremos como selecionar matérias mais recentes em seu site utilizando o SGDB (banco de dados) MySQL. Há basicamente duas formas:


I – modo simples: ordenando

1.       Na tabela de artigos, vc deverá incluir (se já não existe) uma data de cadastro:

2.       Agora, crie uma SQL assim:


Select titulo, date(dia) from artigos order by dia desc limit 5
(obs: após o "limit", use a quantidade que preferir):



Pronto! O banco de dados fará a seleção e a ordenação para vc. Agora é só exibir (veja um exemplo aqui, usando PHP e PDO).

II – 2ª forma: por diferença de dias

Outra forma, em vez de utilizar uma limitação por total de registros, é limitar os dias; para isso, use as funções datediff e curdate(); no exemplo a seguir, selecionamos os registros cuja diferença entre o cadastro e a data de hoje é menor que 30 dias:

Select id, titulo, date(dia) from artigos
where datediff(curdate(), date(dia)) < 30
order by dia desc;