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 :

Faire comme un explode en PHP, pour le champ d'une requête


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de baggie
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    755
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 755
    Par défaut Faire comme un explode en PHP, pour le champ d'une requête
    Bonjour

    Petit problème pour une requête SQL, mais avant tout une question s'impose : existe-t-il une fonction reconnue par MySQL qui agit de la même façon que la fonction explode() de PHP ?

    Voici mon problème en plus "clair" :
    - j'ai une liste de noms de domaines dans une table

    Ex : truc.fr, bidule.org, machin.com,tralala.info

    - j'ai une table emails contenant tous les emails de tous les domaines

    Ex : email1@truc.fr,email2@truc.fr,email3@truc.fr,email4@truc.fr,
    email1@bidule.org,
    email1@machin.com,email2@machin.com,
    email1@tralala.info,email2@tralala.info.

    Le but de la requête est donc de compter le nombre d'emails qu'il y a pour chaque domaine. J'aurai donc souhaité couper les emails à partir de l'@ et ensuite compter combien il y en a pour chaque domaine différent. Enfin, c'est la solution qui me paraît assez logique, mais faisable ?

    Et donc avoir :
    truc.fr : 4
    bidule.org : 1
    machin.com : 2
    tralala.info : 2

    Le substr() ne peut pas aller puisque la taille des mails peut varier ainsi que la taille des noms de domaines.
    Donc si vous avez une petite idée, une piste ... =)

    Ah et je suis sous MySQL 3.23.56.

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 060
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    select SUBSTRING(leChampMail, LOCATE('@', leChampMail) + 1) as domaine, count(SUBSTRING(leChampMail, LOCATE('@', leChampMail) + 1)) as nb
    from laTableMail
    group by domaine
    order by domaine

  3. #3
    Membre éclairé Avatar de baggie
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    755
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 755
    Par défaut
    Nickel jeca !! Je te remercie, ça marche impec'

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

Discussions similaires

  1. [AC-2007] Problème de critère pour le champ d'une requête de recherche
    Par robin148 dans le forum Access
    Réponses: 1
    Dernier message: 23/05/2014, 12h18
  2. recuperer la valeur d'une combobox pour la comparer dans une requête
    Par Rukawa dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 30/06/2006, 11h22
  3. Réponses: 2
    Dernier message: 10/03/2006, 13h55
  4. [SYBASE] Aide pour l'écriture d'une requête
    Par karine77 dans le forum Sybase
    Réponses: 2
    Dernier message: 26/04/2005, 10h57
  5. changement de type pour un champ dans une table
    Par Missvan dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 23/02/2004, 15h26

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