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

IHM Discussion :

Comment trouver le max


Sujet :

IHM

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2007
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 45
    Points : 13
    Points
    13
    Par défaut Comment trouver le max
    Bonjour !
    j'ai besoin d'aide, j'aimerais trouver la daterepass la plus vieille pour chaque personne qu'il y a dans ma table en fonction du service.
    c'est pour créer un état pour savoir pour chaque personne , quand elle devra etre reformé.
    donc je ne voudrais afficher que la date la plus vieille
    j'ai essayé a partir d'une requête, de cette façon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT EmployeFormation.Service, EmployeFormation.Nom, EmployeFormation.Prenom, EmployeFormation.TypeContrat, EmployeFormation.DatePass, max(EmployeFormation.DateRepass)
    FROM EmployeFormation
    WHERE (((EmployeFormation.Service)=[Saisir le service]))
    ORDER BY EmployeFormation.DateRepass DESC;
    mais il me dit que d'agrégat n'est pas bonne pour le service...
    je ne comprends pas trop
    si quelqu'un a une solution pour trouver une seule date par personne je serait reconnaissante merci


    PS : niveau débutante

  2. #2
    Membre chevronné
    Avatar de Demco
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 396
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 396
    Points : 2 228
    Points
    2 228
    Par défaut
    Si tu as un Max() et d'autres champs dans la sélection, il te faut un GROUP BY.
    J'aime les gâteaux.

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2007
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 45
    Points : 13
    Points
    13
    Par défaut
    bon bah voila j'ai essayé comme ça mais il me dit toujours le même problème avec fonction d'agregat et service
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT  EmployeFormation.NumEmploye, EmployeFormation.Service, EmployeFormation.Nom, EmployeFormation.Prenom, EmployeFormation.TypeContrat, EmployeFormation.DatePass, EmployeFormation.DateRepass
    FROM EmployeFormation
    WHERE (((EmployeFormation.Service)=[Saisir le service]))
    GROUP BY   EmployeFormation.NumEmploye
    ORDER BY EmployeFormation.DateRepass DESC;

  4. #4
    Membre chevronné
    Avatar de Demco
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 396
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 396
    Points : 2 228
    Points
    2 228
    Par défaut
    C'est qu'il faut donc rajouter le service au GROUP BY. Tu vas devoir ajouter tous les champs sauf celui qui a le Max de toute façon.
    J'aime les gâteaux.

  5. #5
    Membre à l'essai
    Inscrit en
    Mai 2007
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 45
    Points : 13
    Points
    13
    Par défaut
    voila avec ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT EmployeFormation.NumEmploye, EmployeFormation.Service, EmployeFormation.Nom, EmployeFormation.Prenom, EmployeFormation.TypeContrat, Max(EmployeFormation.DateRepass) AS Datemax
    FROM EmployeFormation
    WHERE (((EmployeFormation.Service)=[Saisir le service]))
    GROUP BY EmployeFormation.NumEmploye, EmployeFormation.Service, EmployeFormation.Nom, EmployeFormation.Prenom, EmployeFormation.TypeContrat;
    ça marche très bien
    merci beaucoup !

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

Discussions similaires

  1. comment trouver le max d'un vector
    Par shuang dans le forum Visual C++
    Réponses: 2
    Dernier message: 05/07/2010, 11h08
  2. Réponses: 4
    Dernier message: 20/02/2010, 02h40
  3. Réponses: 3
    Dernier message: 21/01/2004, 08h47
  4. Comment trouver le répertoire démarrage sous 98?
    Par PHILOSOPHE dans le forum API, COM et SDKs
    Réponses: 6
    Dernier message: 18/11/2003, 20h10
  5. [CR] Comment trouver un champs dans un report ??
    Par Madduck dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 18/09/2003, 08h31

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