IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

Requetes imbriquées et jointures


Sujet :

Requêtes MySQL

  1. #1
    Candidat au Club
    Inscrit en
    Mars 2004
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Requetes imbriquées et jointures
    Bonjour,

    J aurai besoin de creer une requete pour classer des article (artid) en fonction du nombre de commentaires sur ceux ci (count(C.id)).
    Mais cela fait un an que je n est plus touché au Mysql et j avou qu un peu d aide ne serai pas de refu...

    nombre de commentaires:
    SELECT count(C.id) FROM nuked_comment C, nuked_seccont S WHERE C.im_id=S.artid AND module='Sections'

    liste des articles:
    SELECT distinct S.artid, S.secid, S.title, S.counter FROM nuked_seccont S


    et la :
    SELECT distinct S.artid, S.secid, S.title, S.counter, (SELECT count(C.id) FROM nuked_comment C, nuked_seccont S WHERE C.im_id=S.artid AND module='Sections') AS COM FROM nuked_seccont S ORDER BY COM

    erreur de syntax (en la tournant ds n importe quel sens)...

  2. #2
    Candidat au Club
    Inscrit en
    Mars 2004
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Je vien de remarquer que mon hebergeur utilise MySQL 4.0.16 donc de toute facon ca ne marchera pas ...
    Mais pour info perso, qu aurai t il fallu mettre?
    Et y a t il une autre solution que l imbriquation de requete?

    table nuked_comment
    id int(10) NOT NULL auto_increment,
    module varchar(30) NOT NULL default '0',
    im_id int(100) default NULL,
    autor text,
    titre text NOT NULL,
    comment text,
    date_com text,
    heure_com text,
    autor_ip text,
    KEY id (id)

    TABLE nuked_seccont
    artid int(11) NOT NULL auto_increment,
    secid int(11) NOT NULL default '0',
    title text NOT NULL,
    content text NOT NULL,
    counter int(11) NOT NULL default '0',
    bbcodeoff int(1) NOT NULL default '0',
    smileyoff int(1) NOT NULL default '0',
    PRIMARY KEY (artid)

  3. #3
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    Salut,

    la requête a l'air bien compliquée, essaye plutôt avec un GROUP BY :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT distinct S.artid, S.secid, S.title, S.counter, count(C.id) AS COM  FROM nuked_comment C, nuked_seccont S WHERE C.im_id=S.artid AND C.module='Sections' 
    GROUP BY S.artid 
    ORDER BY COM

  4. #4
    Candidat au Club
    Inscrit en
    Mars 2004
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    génial c tout a fai ca merci bcp

    il me fallai les articles sans commentaires aussi donc j ai rajouté une jointure externe

    SELECT DISTINCT S.artid, S.secid, S.title, S.counter, count( C.id ) AS COM
    FROM nuked_comment C
    RIGHT OUTER JOIN nuked_seccont S ON C.im_id = S.artid AND C.module = 'Sections'
    GROUP BY S.artid
    ORDER BY COM

    merci bcp en tout cas...

  5. #5
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    De rien, et n'oublie pas de cliquer sur Résolu...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Requetes imbriquées ou Jointures ?
    Par rockt13 dans le forum Requêtes
    Réponses: 7
    Dernier message: 18/10/2011, 17h51
  2. Différence entre jointure et requetes imbriquées
    Par sliderman dans le forum Requêtes
    Réponses: 4
    Dernier message: 28/04/2008, 09h24
  3. Requete imbriquée ou join sur table de jointure
    Par elfenlieder dans le forum Requêtes
    Réponses: 7
    Dernier message: 28/11/2007, 11h22
  4. requete normale, imbriquée et jointure
    Par medonline dans le forum Requêtes
    Réponses: 3
    Dernier message: 15/01/2006, 16h01
  5. Requetes imbriquées et jointures avec 3 tables
    Par The Wretched dans le forum Langage SQL
    Réponses: 4
    Dernier message: 25/11/2005, 11h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo