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 :

réunir deux requêtes


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 223
    Par défaut réunir deux requêtes
    Bonjour !
    J'ai une requête comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT txt_manif, min(titre_manif) titre_manif
    FROM manif
    WHERE comm_manif LIKE 'Camaret' AND titre_manif LIKE 'cin%' 
    GROUP BY txt_manif 
    ORDER BY titre_manif ASC
    et je voudrais que les 7 premiers caractères de titre_manif ne s'affichent pas.
    Je l'ai fait sur une autre page de cette façon-là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT jour, RIGHT (titre_manif, LENGTH(titre_manif) -7) AS titre_manif
     FROM manif 
    WHERE titre_manif LIKE 'cin%' 
    ORDER BY titre_manif ASC
    ... et ça fonctionne très bien. Mais je ne sais pas comment réunir les deux... vous pourriez m'aider svp ?
    Merci !

  2. #2
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 430
    Billets dans le blog
    11
    Par défaut
    Peux-être quelque chose comme cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT txt_manif, min(titre_manif) titre_manif
    FROM manif
       INNER JOIN (SELECT txt_manif, jour, RIGHT (titre_manif, LENGTH(titre_manif) -7) AS titre_manif
                    FROM manif 
                    WHERE titre_manif LIKE 'cin%') LST
          ON manif.txt_manif = LST.txt_manif
    WHERE comm_manif LIKE 'Camaret' AND titre_manif LIKE 'cin%' 
    GROUP BY txt_manif 
    ORDER BY titre_manif ASC

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 223
    Par défaut
    Merci de ta réponse !

    J'ai eu ce message : Column 'txt_manif' in field list is ambiguous
    J'ai donc rajouté le nom de la table devant, et puis j'ai eu celui-là : Column 'titre_manif' in field list is ambiguous, et ce coup-ci, je n'arrive pas à faire ce qu'il faut
    J'en suis donc là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT manif.txt_manif, min(titre_manif) titre_manif
    FROM manif
       INNER JOIN (SELECT manif.txt_manif, jour, RIGHT (titre_manif, LENGTH(titre_manif) -7) AS titre_manif
                    FROM manif 
                    WHERE titre_manif LIKE 'cin%') LST
          ON manif.txt_manif = LST.txt_manif
    WHERE comm_manif LIKE 'Camaret' AND titre_manif LIKE 'cin%' 
    GROUP BY manif.txt_manif 
    ORDER BY titre_manif ASC

  4. #4
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 430
    Billets dans le blog
    11
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT manif.txt_manif, min(manif.titre_manif) titre_manif
    FROM manif
       INNER JOIN (SELECT manif.txt_manif, jour, RIGHT (titre_manif, LENGTH(titre_manif) -7) AS titre_manif
                    FROM manif 
                    WHERE titre_manif LIKE 'cin%') LST
          ON manif.txt_manif = LST.txt_manif
    WHERE  manif.comm_manif LIKE 'Camaret' AND  manif.titre_manif LIKE 'cin%' 
    GROUP BY manif.txt_manif 
    ORDER BY  manif.titre_manif ASC

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 223
    Par défaut
    Plus de message d'erreur! Mais l'affichage est "normal" : les 7 premiers caractères sont toujours visibles...

  6. #6
    Membre Expert
    Avatar de ericd69
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    1 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 919
    Billets dans le blog
    1
    Par défaut
    Salut, et ça tout simplement:

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT txt_manif, RIGHT (titre,LENGTH(titre) -7), jour, min(titre_manif) as titre
    FROM manif m
    WHERE comm_manif LIKE 'camaret' AND titre LIKE 'cin%' 
    GROUP BY txt_manif 
    ORDER BY titre_manif ASC

    ...et tu lis seulement les colonnes dont tu as besoin (les 3 premières)

    On ne nomme jamais avec un as en utilisant un nom de champ de table, les humains et mysql n'aiment pas

Discussions similaires

  1. [PostGreSQL] Trier une liste ayant deux requêtes comme source
    Par Mat_DZ dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 09/08/2006, 10h51
  2. Comparer le contenu de deux requêtes
    Par Floch dans le forum Access
    Réponses: 2
    Dernier message: 04/05/2006, 11h43
  3. [MySQL] Afficher deux requêtes en deux colonnes
    Par SnickeursMan dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 21/11/2005, 11h19
  4. Mixer deux requêtes
    Par WriteLN dans le forum Requêtes
    Réponses: 3
    Dernier message: 14/11/2005, 09h34
  5. Afficher le ratio du résultat de deux requêtes
    Par decour dans le forum Access
    Réponses: 25
    Dernier message: 07/11/2005, 19h54

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