Requet sql, les derniers articles de chaque catégorie

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par douniacreation, 18 Octobre 2010.

  1. douniacreation
    douniacreation Nouveau WRInaute
    Inscrit:
    24 Janvier 2010
    Messages:
    38
    J'aime reçus:
    0
    Bonjour,

    Je veux afficher les 5 derniers article de chaque catégorie.
    j'ai fais la requet suivante

    Code:
    SELECT id,titre,categorie FROM article GROUP BY categorie LIMIT 4
    mais cela m'affiche qu'un seul article de chaque catégorie, quelle est la requet ou la commande exact a faire ?

    Merci
     
  2. jcaron
    jcaron WRInaute accro
    Inscrit:
    13 Février 2004
    Messages:
    2 593
    J'aime reçus:
    0
    C'est assez compliqué à faire en une seule requête si tu veux avoir les X derniers de chaque catégorie en une seule requête (et que la liste des catégories n'est pas connue d'avance, i.e. "en dur"), mais ça donne quelque chose comme:

    select ... from articles a,categories c where a.categorie=c.id and a.id in (select id from articles a2 where a2.categorie=a.categorie order by date desc limit 5)

    Le problème, c'est que ça marche avec postgresql, mais je ne suis pas sûr que ça marche avec mysql (en tous cas ça ne marche pas sur toutes les versions de mysql), et je ne suis pas sûr qu'il y ait une façon simple de contourner le problème (il y a au moins une façon très tordue de le faire, mais c'est tellement horrible que je ne vais pas développer). Si tu n'en veux qu'un seul par catégorie c'est par contre tout à fait faisable.

    Jacques.
     
  3. rudddy
    rudddy WRInaute passionné
    Inscrit:
    1 Août 2007
    Messages:
    2 142
    J'aime reçus:
    0
    jacques ceci marche en mysql
     
  4. douniacreation
    douniacreation Nouveau WRInaute
    Inscrit:
    24 Janvier 2010
    Messages:
    38
    J'aime reçus:
    0
    J'ai essayé mais cela me donne:

    MySQL a répondu:
    #1235 - This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'

    Alors ma version de mysql ne me permet pas de faire un LIMIT dans un IN...
     
  5. rudddy
    rudddy WRInaute passionné
    Inscrit:
    1 Août 2007
    Messages:
    2 142
    J'aime reçus:
    0
    quelle version ?
     
  6. jcaron
    jcaron WRInaute accro
    Inscrit:
    13 Février 2004
    Messages:
    2 593
    J'aime reçus:
    0
    Je sais qu'en 5.0 ça ne passe pas, je ne sais pas ce que ça donne avec les versions plus récentes.

    Jacques.
     
  7. rudddy
    rudddy WRInaute passionné
    Inscrit:
    1 Août 2007
    Messages:
    2 142
    J'aime reçus:
    0
    autant pour moi jacques

    mais apparemment c'est quand même une fonction de base ! pourquoi ça passerait pas ?
     
  8. jcaron
    jcaron WRInaute accro
    Inscrit:
    13 Février 2004
    Messages:
    2 593
    J'aime reçus:
    0
    Je ne sais pas très bien, je ne vois pas trop la complication, mais je ne connais pas bien les entrailles de mysql. Avec postgresql en tous cas ça marche très bien :)

    Jacques.
     
  9. Leonick
    Leonick WRInaute accro
    Inscrit:
    8 Août 2004
    Messages:
    19 415
    J'aime reçus:
    0
    il me semble qu'il faille avoir au moins la version 5.1 pour pouvoir le faire
     
Chargement...
Similar Threads - Requet sql derniers Forum Date
Prestashop - Comportement bizarre d'une requête SQL e-commerce 1 Décembre 2018
Requête Mysql avec des string Développement d'un site Web ou d'une appli mobile 6 Février 2018
La syntaxe SQL permet-elle plusieurs mots-clefs dans une (sous-)requête identique ? Développement d'un site Web ou d'une appli mobile 17 Août 2017
Requete mysql Développement d'un site Web ou d'une appli mobile 30 Mai 2017
Problème requête mysql Développement d'un site Web ou d'une appli mobile 1 Mars 2017
Reduire et optimiser une requete sql Développement d'un site Web ou d'une appli mobile 8 Décembre 2016
Anomalie : beaucoup trop de requêtes SQL Administration d'un site Web 18 Novembre 2016
Besoin d'aide pour requête SQL PHP Développement d'un site Web ou d'une appli mobile 12 Novembre 2016
[php/mysql] Eviter de faire 20 requêtes pour un affichage Développement d'un site Web ou d'une appli mobile 19 Janvier 2016
requete Mysql et classement des résultats Administration d'un site Web 1 Novembre 2015
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice