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 :

Pb de WHERE


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Pb de WHERE
    Bonjour,

    j'ai plusieurs lignes identique avec un seul champs date qui varie (il peut valoir NULL)

    je veux selectionner celle dont ce champs date est le plus grand.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select * from candidats 
    where Nom_Usuel = 'DUPOND'
    and DATE_retour_dossier = max(DATE_retour_dossier)
    Cela me crée un erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Error Code : 1111
    Invalid use of group function
    (0 ms taken)
    C'est sans doute simple mais je n'y arrive pas....

    Merci pour votre aide,
    Loïc

    PS : j'ai mysql 4.0

  2. #2
    Expert confirmé
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 944
    Par défaut
    Essaies avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ...and DATE_retour_dossier IN (select max(DATE_retour_dossier) from candidats)

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 31
    Par défaut
    tu dois rajouter un 'group by' pour utiliser ton max() sinon passes par la solution de qi130

  4. #4
    Invité
    Invité(e)
    Par défaut
    Je ne suis plu à mon travail donc je ne peux pas tester mais je ne pense pas que ça puisse marcher car ma version de mysql ne supporte pas les sous-requetes et c'est là tout mon probleme. Je cherche un autre moyen d'y arriver sans avoir à utiliser les sous-requetes.

  5. #5
    Membre chevronné Avatar de papyphp
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Âge : 75
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 438
    Par défaut
    Salut,


    Essaye un peu,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    select *, max(DATE_retour_dossier)  from candidats
    where Nom_Usuel = 'DUPOND'
    on ne sait jamais
    A+

  6. #6
    Membre Expert Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Par défaut
    Salut,

    Ceci devrait marcher :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT * from candidats
    WHERE Nom_Usuel = 'DUPOND'
    ORDER BY DATE_retour_dossier DESC
    LIMIT 1

  7. #7
    Invité
    Invité(e)
    Par défaut
    merci pour l'astuce, effectivement ça devrait marcher de cette manière.

    Merci beaucoup,
    Loic

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

Discussions similaires

  1. [COUNT] select ... from ... where count !
    Par tmcgrady dans le forum Langage SQL
    Réponses: 5
    Dernier message: 30/11/2007, 17h29
  2. question sur SELECT ...WHERE...IN
    Par danseur dans le forum Requêtes
    Réponses: 3
    Dernier message: 23/01/2004, 15h23
  3. Select * Where {}
    Par Thomad dans le forum Langage SQL
    Réponses: 14
    Dernier message: 16/10/2003, 21h27
  4. "where @text" ou @text='nom='julien'' fonctionne p
    Par lord_paco dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 08/09/2003, 14h37
  5. where sur la première colonne
    Par r-zo dans le forum Requêtes
    Réponses: 8
    Dernier message: 28/07/2003, 09h55

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