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

Langage SQL Discussion :

[Access 2003] requete sql date max par certain champs


Sujet :

Langage SQL

  1. #1
    Membre actif Avatar de Gary_Stoupy
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    244
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 244
    Points : 232
    Points
    232
    Par défaut [Access 2003] requete sql date max par certain champs
    Bonjour,

    Malgré de nombreuses recherches (infructueuses) je me résous à poser ma question :
    pour simplifier, ma table Tableau est composé d'un champ Date et d'un champ VALEUR (qui ne contient que 5 VALEUR différentes)
    j'aimerais avoir la date maximum par VALEUR...

    Donc le resultat devrait etre du genre :

    VALEUR1 Datemax1
    VALEUR2 Datemax2
    VALEUR3 Datemax3
    VALEUR4 Datemax4
    VALEUR5 Datemax5

    Je suis sous vba... merci d'avance pour les réponses ou les redirections vers un sujet identique (mais bon, jen ai pas trouvé... il yen a ki ressemblent mais a chaque fois, c pas ca...)

    Merci d'avance
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant.

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 673
    Points : 1 775
    Points
    1 775
    Par défaut
    Vous ne précisez pas votre SGBD comme demandé dans les règles du forum donc je vous donne une solution sous Oracle 10gR1,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    10g SOC5> create table tableau(madate date, valeur number(1));
     
    Table créée.
     
    10g SOC5> insert into tableau values (to_date('310705', 'DDMMYY'), '1');
     
    1 ligne créée.
     
    10g SOC5> insert into tableau values (to_date('260605', 'DDMMYY'), '1');
     
    1 ligne créée.
     
    10g SOC5> insert into tableau values (to_date('240605', 'DDMMYY'), '2');
     
    1 ligne créée.
     
    10g SOC5> insert into tableau values (to_date('300505', 'DDMMYY'), '3');
     
    1 ligne créée.
     
    10g SOC5> insert into tableau values (to_date('011206', 'DDMMYY'), '3');
     
    1 ligne créée.
     
    10g SOC5> 
    10g SOC5> select max(madate)
      2  from tableau
      3  group by valeur;
     
    MAX(MADATE)
    -------------------
    31/07/2005 00:00:00
    24/06/2005 00:00:00
    01/12/2006 00:00:00
     
    3 ligne(s) sélectionnée(s).
     
    10g SOC5>
    Modérateur des forums Oracle et Langage SQL
    Forum SQL : je n'interviens PAS plus de 4 fois dans une discussion car si c'est nécessaire cela prouve généralement que vous n'avez pas respecté : les règles du forum

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    956
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 956
    Points : 1 199
    Points
    1 199
    Par défaut
    Bonjour,
    Magnus tu n'aurais pas oublié valeur dans la liste des champs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT valeur, max(madate)
      FROM tableau
    GROUP BY valeur;

  4. #4
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 673
    Points : 1 775
    Points
    1 775
    Par défaut
    Effectivement, mais j'ai testé la requête marche aussi souci.
    Modérateur des forums Oracle et Langage SQL
    Forum SQL : je n'interviens PAS plus de 4 fois dans une discussion car si c'est nécessaire cela prouve généralement que vous n'avez pas respecté : les règles du forum

  5. #5
    Membre actif Avatar de Gary_Stoupy
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    244
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 244
    Points : 232
    Points
    232
    Par défaut
    Bonjour,

    je n'ai aucune idée de mon SGBD... Je suis sous Access 2003 et je cherche simplement à effectuer une requete sur une de mes tables...
    Lorsque je teste ta solution, il me met une erreur :

    Vous avez essayé d'exécuter une requête ne comprenant pas l'expression spécifié 'date1' comme une partie de la fonction d'agrégat
    Merci de votre aide...
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant.

  6. #6
    Membre actif Avatar de Gary_Stoupy
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    244
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 244
    Points : 232
    Points
    232
    Par défaut
    bon ben g relancé access et ca a fonctionné... l'informatique et ses mystères...
    Merci encore
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant.

  7. #7
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 673
    Points : 1 775
    Points
    1 775
    Par défaut
    Citation Envoyé par Gary_Stoupy
    je n'ai aucune idée de mon SGBD... Je suis sous Access 2003
    Elle est trop drôle celle là : ton SGBD est justement Access.
    Avant de poser une question sur un forum, il convient de s'en poser 1 ou 2 histoires de vérifier qu'on est capable de répondre à des notions de base

    Enfin quand tu indiques un message d'erreur, bien souvent il est indispensable que tu donnes le code à l'origine de ton erreur ; en l'occurence, ici, la requête que tu as exécutée.
    Modérateur des forums Oracle et Langage SQL
    Forum SQL : je n'interviens PAS plus de 4 fois dans une discussion car si c'est nécessaire cela prouve généralement que vous n'avez pas respecté : les règles du forum

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

Discussions similaires

  1. requete sql et code vba concatenation champs par date
    Par elhaissoufi dans le forum Requêtes et SQL.
    Réponses: 0
    Dernier message: 13/12/2009, 02h33
  2. [Access 2003] Requete SQL
    Par MrWeb dans le forum Langage SQL
    Réponses: 3
    Dernier message: 29/12/2006, 12h46
  3. requete sql avec between sur des champs de type Date
    Par ersoufiane dans le forum Langage SQL
    Réponses: 2
    Dernier message: 02/08/2006, 20h43
  4. [SQL Server 2000/Access 2003] Requête SQL à affiner
    Par Baldric de Dol dans le forum Langage SQL
    Réponses: 8
    Dernier message: 08/07/2006, 08h17
  5. [Access] Probleme requete SQL
    Par kissmytoe dans le forum Langage SQL
    Réponses: 11
    Dernier message: 24/02/2006, 16h25

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