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

PHP & Base de données Discussion :

Retourner le nombre d'enregistrements sur 2 tables [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre actif
    Avatar de Freedolphin
    Homme Profil pro
    Webmaster
    Inscrit en
    Février 2006
    Messages
    291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2006
    Messages : 291
    Points : 225
    Points
    225
    Par défaut Retourner le nombre d'enregistrements sur 2 tables
    Bonjour à tous,

    Je n'arrive pas à faire un truc bête comme chou : récupérer le nombre d'enregistrements de 2 tables, qui ont une colonne semblable.
    Pour faire simple, les tables Table1 et Table2 ont chacune une colonne id, je voudrais additionner le nombre total.
    J'ai fais 2 requêtes simples, puis j'ai additionné les 2 résultats obtenus avec mysql_num_rows.

    Mais je me demande s'il n'est pas plus simple, propre et rapide de faire une jointure ?
    Mes essais ont été vains, y compris avec COUNT ou SUM (pas de résultat).

    Voici ce que je pensais être correct :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $sql = mysql_query("SELECT id FROM table1 JOIN table2");
    $nb = mysql_num_rows($sql);
    Avez-vous une idée ou pensez-vous que la simple addition du résultat de 2 requêtes est suffisante ?
    Merci.
    Le mieux n'est pas forcément l'ennemi du bien.

  2. #2
    Membre régulier Avatar de moogli
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 58
    Points : 102
    Points
    102
    Par défaut
    salut,

    cela dépend si tu utilise ou non les données.

    Si tu n'en a pas besoin alors une requête sql avec deux sous requêtes devrait faire l'affaire.

    par exemple
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT (SELECT COUNT(1)
            FROM table1) +
           (SELECT COUNT(1)
            FROM table1) AS totaldesdeux

    pour info : il serait interressant de passer (si possible) à l'extension mysqli plutôt que mysql afin de préparer l'avenir (vu que l'extension mysql est vouée à disparaître et l'extension mysqli propose d'autre possibilité, comme les requêtes préparées).

    @+

  3. #3
    Membre actif
    Avatar de Freedolphin
    Homme Profil pro
    Webmaster
    Inscrit en
    Février 2006
    Messages
    291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2006
    Messages : 291
    Points : 225
    Points
    225
    Par défaut
    Merci Moogli pour cette syntaxe que je n'ai trouvée nulle part.
    Quant à mysqli, j'y songe en effet, mais ça demande d'adapter tout le code.
    Merci encore.
    Le mieux n'est pas forcément l'ennemi du bien.

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

Discussions similaires

  1. Nombre d'enregistrement sur toute les tables ?
    Par lolafrite dans le forum SQL
    Réponses: 2
    Dernier message: 30/10/2008, 15h22
  2. Réponses: 4
    Dernier message: 05/07/2007, 17h07
  3. [DB] Nombre d'enregistrements d'une table
    Par Mister Nono dans le forum Bases de données
    Réponses: 26
    Dernier message: 09/05/2006, 09h51
  4. enregistrement sur plusieurs tables
    Par vovor dans le forum Access
    Réponses: 2
    Dernier message: 03/10/2005, 11h25
  5. limitation du nombre d'enregistrement sur une jointure
    Par coredump dans le forum Langage SQL
    Réponses: 2
    Dernier message: 18/06/2005, 16h13

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