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

 MySQL Discussion :

Probleme requete sans utiliser GROUP BY


Sujet :

MySQL

  1. #1
    Membre à l'essai
    Homme Profil pro
    gérant magasin location auto
    Inscrit en
    Janvier 2015
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : gérant magasin location auto

    Informations forums :
    Inscription : Janvier 2015
    Messages : 21
    Points : 19
    Points
    19
    Par défaut Probleme requete sans utiliser GROUP BY
    Bonjour,

    Mes tables:

    Etape
    idEtape nomEtape Livrable
    1 Démarrage Déf. base de projet (objectifs, chef projet)
    2 Prévision Planification du projet
    3 Réalisation Exécution du plan du projet
    4 Surveillance et Maîtrise Rapport de performance
    5 Clôture Document de clôture du projet

    EtapexProjet

    idEtape idProjet dateDebut dateFin
    1 1 2011-07-01 2011-09-01
    2 1 2011-09-02 2001-11-30
    3 1 2011-12-01 2012-07-07
    4 1 2012-07-08
    1 2 2012-05-01 2012-05-10
    2 2 2012-11-05 2012-01-06
    3 2 2012-06-02 2012-07-01
    4 2 2012-07-22 2012-07-23
    5 2 24-07-2012 25-07-2012
    1 3 2011-11-01 2012-01-20
    2 3 2012-01-21 2012-04-01
    3 3 2012-04-02


    Je désire avoir une requête qui donnerait comme résultat le nom et le livrable de l’étape actuelle de chaque projet de l’entreprise.

    Comment faire sans utiliser GROUP BY...

    Je crois qu'il faut que j'utilise quelque chose comme : SELECT x,y FROM ... WHERE y = (SELECT MAX(z) FROM ... WHERE ....Mais j'ai de la difficulté à mettre les bons termes à l'intérieur. x,y doivent être mes colonnes from mes tables (ok pour les tables) mais quelles colonnes prendre ? Je suis perdu !!!

    Merci!

  2. #2
    Membre à l'essai
    Homme Profil pro
    gérant magasin location auto
    Inscrit en
    Janvier 2015
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : gérant magasin location auto

    Informations forums :
    Inscription : Janvier 2015
    Messages : 21
    Points : 19
    Points
    19
    Par défaut
    Voici mon début de code suis-je dans la bonne voie sinon pouvez-vous me guider?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM etape, etapexprojet (SELECT MAX(datefin) FROM etapexprojet WHERE idprojet = 1);
    ce code me donne la date la plus loin pour tout les projets comment le faire pour chaque projet en affichant le nomEtape et le Livrable

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT MAX(datefin) FROM etapexProjet WHERE idprojet = 1 OR idprojet = 2 OR idprojet = 3;
    Merci!

  3. #3
    Membre à l'essai
    Homme Profil pro
    gérant magasin location auto
    Inscrit en
    Janvier 2015
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : gérant magasin location auto

    Informations forums :
    Inscription : Janvier 2015
    Messages : 21
    Points : 19
    Points
    19
    Par défaut
    Voici mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT etapexProjet.idProjet, etapexProjet.datedebut, etape.nometape, etape.livrable FROM etapexProjet, etape WHERE datedebut = (SELECT MAX(datedebut) FROM etapexProjet WHERE idProjet = 1);
    Cela ne me donne pas la date la plus loin pour mon étape.mais le nom de tous les nometape et livrable sont la plutot que seulement celui de l'étape en question.

    Voici le résultat, comment afficher seulement la ligne 4.

    +----------+---------+------------+--------------------------+------------------
    ----------------------------+
    | idProjet | idetape | datedebut | nometape | livrable
    |
    +----------+---------+------------+--------------------------+------------------
    ----------------------------+
    | 1 | 4 | 2012-07-08 | Démarrage | Déf. base de proj
    et (objectifs, chef projet) |
    | 1 | 4 | 2012-07-08 | Prévision | Planification du
    projet |
    | 1 | 4 | 2012-07-08 | Réalisation | Exécution du plan
    du projet |
    | 1 | 4 | 2012-07-08 | Surveillance et Maitrîse | Rapport de perfor
    mance
    |
    | 1 | 4 | 2012-07-08 | Clôture | Document de clôtu
    re du projet |
    +----------+---------+------------+--------------------------+------------------
    ----------------------------+
    5 rows in set (0.00 sec)

    Merci!

  4. #4
    Membre émérite
    Homme Profil pro
    tripatouilleur de code pour améliorer mon quotidien boulistique
    Inscrit en
    Février 2008
    Messages
    939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : tripatouilleur de code pour améliorer mon quotidien boulistique
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2008
    Messages : 939
    Points : 2 287
    Points
    2 287
    Par défaut
    Bonsoir

    Selon toute vraisemblance, vous utilisez l'ancienne méthode de jointure entre les tables.
    Je vous conseille de consulter rapidement le tutoriel Les jointures, ou comment interroger plusieurs tables (et de façon plus générale tous les tutoriels de SQL (Les meilleurs tutoriels SQL).

    D'autre part, pourquoi ne voulez-vous pas utiliser Group By?

    Pierre

  5. #5
    Membre à l'essai
    Homme Profil pro
    gérant magasin location auto
    Inscrit en
    Janvier 2015
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : gérant magasin location auto

    Informations forums :
    Inscription : Janvier 2015
    Messages : 21
    Points : 19
    Points
    19
    Par défaut
    merci pour l’information.

    Ce n'est pas que je ne veux pas l'utiliser mais je suis présentement un cour et un exercice nous demande de ne pas l'utiliser.

  6. #6
    Membre à l'essai
    Homme Profil pro
    gérant magasin location auto
    Inscrit en
    Janvier 2015
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : gérant magasin location auto

    Informations forums :
    Inscription : Janvier 2015
    Messages : 21
    Points : 19
    Points
    19
    Par défaut
    Super le lien pour un débutant.

    Je viens de trouver ma solution grâce au NATUREL JOIN.

    encore une fois un grand merci pour l'information.

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

Discussions similaires

  1. Questionnement Probleme requete sans utiliser GROUP BY
    Par danbou030 dans le forum Débuter
    Réponses: 1
    Dernier message: 13/04/2015, 15h48
  2. Problem requete avec MAX, GROUP BY ...
    Par alexthomas dans le forum Langage SQL
    Réponses: 1
    Dernier message: 18/11/2008, 15h58
  3. Réponses: 5
    Dernier message: 11/04/2007, 13h02
  4. [requete] Probleme de COUNT() et GROUP BY
    Par cadoudal56 dans le forum Requêtes
    Réponses: 6
    Dernier message: 04/12/2006, 19h23
  5. requete SQL sur Typed DataSet, sans utiliser SQL serveur
    Par Harry_polin dans le forum Accès aux données
    Réponses: 2
    Dernier message: 06/10/2006, 19h15

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