Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Galera, estou com um probleminha na minha consulta.. Não estou conseguindo fazer uma simples ordenação..
Podem me ajudar??
Eu estou fazendo uma ordenação decrecente de idMsg.
Quando eu coloco o seguinte SQL:
SELECT idMsg, idUsuario, idTopico
FROM mensagens
ORDER BY idMsg DESC
LIMIT 0,10;
A SAÍDA É ESPERADA:
>
idMsg idUsuario idTopico
5843 2 513
5842 317 565
5841 317 558
5840 317 513
5839 283 562
5838 2 558
5837 291 558
5836 2 568
5835 2 459
5834 244 568
Mas eu não gostaria que repetisse os "idTopico" então alterei o SQL da seguinte forma:
SELECT DISTINCT(idTopico), idMsg, idUsuario
FROM mensagens
ORDER BY idMsg DESC
LIMIT 0,10;
ELE CONTINUOU DA MESMA MANEIRA:
>
idTopico idUsuario idMsg
513 5843 2
565 5842 317
558 5841 317
513 5840 317
562 5839 283
558 5838 2
558 5837 291
568 5836 2
459 5835 2
568 5834 244
Após coloquei um "group by" idTopico (aí que ferrou com td)
SELECT DISTINCT(idTopico), idMsg, idUsuario
FROM mensagens
GROUP BY idTopico
ORDER BY idMsg DESC
LIMIT 0,10;
>
idTopico idUsuario idMsg
568 5833 107
566 5817 344
565 5816 344
564 5756 245
563 5731 205
562 5728 107
561 5707 344
560 5694 245
559 5672 2
558 5663 291
Notem que ele não ta mais pegando o ultimo idMsg de cada tópico (é o que eu quero).
Como posso resolver?
Grande abraço galera.
Carregando comentários...