SQL : DISTINCT => Problème

Résolu
Bonsoir,
Je bloque sur une requête SQL, si quelqu'un pouvait me sauver :
Pour faire simple : je cherche à récupérer la liste des titres de mes articles, ordonnés par les réponses. (en gros faire la liste des derniers articles ou l'on a répondu)
SELECT DISTINCT topics.title FROM topics INNER JOIN topic_answer ON topics.id = topic_answer.topic_id ORDER BY topic_answer.id DESC LIMIT 0,8

Mais cela ne marche pas, ca ne me renvoie que les derniers articles ...

Sauf que si j'enlève le DISTINCT j'ai bien ce que je vais, dans le bon ordre, mais avec la duplication d'articles ...
(10.1.41-MariaDB-0+deb9u1)
Merci beaucoup !
--
Have a nice day

1 réponse

  1. Contributeur
    bonjour, tu veux obtenir la liste des derniers articles ou l'on a répondu, et puis tu écris que cela ne marche pas, que cela retourne que les derniers articles.
    peux-tu être plus précis? pourquoi ne pas nous montrer ce que retourne la requête, avec et sans distinct, et, également, le résultat attendu?

    je crois peut-être comprendre: avec le distinct, tu obtiens moins de 8 résultats, c'est cela?

    alors j'essaierais d'abord ceci:
    SELECT topic_id FROM topic_answer group by topic_id order by max(id) desc limit 0,8

    cela retourne-t-il les 8 id des articles qui t'intéressent?
    1. Effectivement le group by fonctionne mieux merci.
      Le problème était que le distinct supprimait le filtre d'ordre sur MariaDB.