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 :

compter des enregistrements [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé
    Homme Profil pro
    retraité, ex chef de projets en informatique
    Inscrit en
    Juillet 2005
    Messages
    602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : retraité, ex chef de projets en informatique
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juillet 2005
    Messages : 602
    Par défaut compter des enregistrements
    Bonjour,

    J'ai une table : TAB
    qui contient, entre autres, un certain nombre de communes de france par le champ INSEE, de forme ddnnn , dd étant le département et nnn un nombre affecté par l'INSEE. ex: 35720.

    J'ai réussi à obtenir un résultat en "bidouillant" un peu, mais je suis persuadé qu'un connaisseur m'ouvrira les yeux sur d'autres possibilités techniques en me disant Quelle commande passer dans le contexte PHP-MYSQL pour :
    1) compter toutes les communes d'un département et qui sont dans ma table (connaître le nombre de communes), donc sur les deux premiers caractères du code INSEE)
    2) savoir le département où j'en ai le plus.

    Bien sûr une commande unique qui ferait tout D'UN SEUL COUP serait l'idéal MAIS ....
    J'ai confiance .
    A très bientôt, j'en suis persuadé.
    Merci par avance.

    Marcel Marie

  2. #2
    Membre Expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Par défaut
    Bonjour,

    Pour le 1), celà devrait se faire avec un count et une opération sur les chaines de ton insee genre (left ou substring).
    Une première idée serait SELECT DISTINCT LEFT(insee, 2) COUNT(*) FROM tAB WHERE un group by (à finir ou changer par un pro du SQL car c pas trp mon cas ::: c pour te donner une idée)

    Pour le 2), je vois pas trop sauf par le php

  3. #3
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Par défaut
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT LEFT(insee, 2) as departement,
    COUNT(*) 
    FROM tAB
    GROUP BY departement

    Quelque chose comme ça ferait l'affaire je pense
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  4. #4
    Membre Expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Par défaut
    Merci,

    C le group By qui fait le distinct, Ok (j'y avais pas pensé comme celà), bon j'y étais presque quand même

    Parcontre pour le 2, faut y rajouter une variable pour retenir le département du plus grand nombre de communes ... j'ai pensé avec MAX mais en une requête pour faire le 1 avec, j'y arrive pas

  5. #5
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Par défaut
    PAs besoin, suffit de classer par ordre de count()
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  6. #6
    Membre éclairé
    Homme Profil pro
    retraité, ex chef de projets en informatique
    Inscrit en
    Juillet 2005
    Messages
    602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : retraité, ex chef de projets en informatique
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juillet 2005
    Messages : 602
    Par défaut c'est OK
    Merci,
    L'histoire du paramètre AS m'a mis sur la voie, outre vos conseils bien entendu (Je n'avais lu que les deux premières réponses avant de m'y attaquer).

    Voici l'essentiel de mon script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $query="SELECT LEFT(esp_ville, 2) AS departement,
      COUNT(*) AS nombre 
      FROM espionnage
      GROUP BY departement
      ORDER BY nombre desc
      limit 1";
      $result = @mysql_query($query);
     
      $ligne=mysql_fetch_array($result);
      $depart=$ligne["departement"];
      $nombre=$ligne["nombre"];
    J'ai ainsi la quantité dans le département où il y en a le plus.
    Merci à TOUS. On peut compter sur vous.

    Marcel Marie

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

Discussions similaires

  1. Etat : compter des enregistrements
    Par pmelen dans le forum IHM
    Réponses: 2
    Dernier message: 11/04/2007, 12h04
  2. Réponses: 1
    Dernier message: 30/03/2007, 08h44
  3. Réponses: 16
    Dernier message: 25/03/2007, 09h56
  4. Compter des enregistrements.
    Par gregb34 dans le forum Langage
    Réponses: 8
    Dernier message: 07/04/2006, 18h45
  5. compter des enregistrement par SQL
    Par 973thom dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 22/11/2004, 18h26

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