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 :

Problème de date


Sujet :

Requêtes MySQL

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Janvier 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2019
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Problème de date
    Bonjour, voici mon problème
    J'ai une requête SQL pour afficher les anniversaires des membres
    Cette requête fonctionne correctement avec la date sous le format 1974-01-14 mais ne fonctionne pas avec le format 01/14/1974


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $q = " limit ".$limit;
    $qry = "SELECT *, TIMESTAMPDIFF(YEAR, date_anniversaire , CURDATE()) AS age
    FROM wallusers
    WHERE
    mem_id IN (".$matches.")
    AND MONTH(date_anniversaire) = MONTH(NOW()) AND DAY(date_anniversaire) = DAY(NOW()) ".$q;

    j'ai bien essayé avec la requête "date_format(date_anniversaire, '%d/%m/%Y')"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $qry = "SELECT *, TIMESTAMPDIFF(YEAR, date_format(date_anniversaire, '%Y-%m-%d') , CURDATE()) AS age
    FROM wallusers
    WHERE
    mem_id IN (".$matches.")
    AND MONTH(date_anniversaire) = MONTH(NOW()) AND DAY(date_anniversaire) = DAY(NOW()) ".$q;
    Mais cela ne fonctionne pas .

  2. #2
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 131
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 131
    Points : 38 549
    Points
    38 549
    Billets dans le blog
    9
    Par défaut
    Bonjour,

    Je ne vois pas l'intérêt de choisir un format de date pour simplement calculer un écart, ça ne changera rien au résultat !
    Par ailleurs, j'ai testé avec et sans et les deux syntaxes fonctionnent, j'obtiens le même résultat dans les deux cas.

    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
    SELECT TMP.DTA
         , TIMESTAMPDIFF(YEAR, TMP.DTA, CURDATE()) AS age
    FROM  (select '1952-01-12' as DTA  union all
           select '1965-02-01' as DTA  union all
           select '1978-03-04' as DTA  union all
           select '1978-01-19' as DTA  union all
           select '1981-06-02' as DTA  union all
           select '1982-02-28' as DTA  union all
           select '1982-03-10' as DTA  union all
           select '1983-01-16' as DTA) as TMP
    WHERE MONTH(TMP.DTA) = MONTH(NOW()) 
      AND DAY(TMP.DTA) = DAY(NOW()) 
    ;
     
    SELECT TMP.DTA
         , TIMESTAMPDIFF(YEAR, date_format(TMP.DTA, '%Y-%m-%d'), CURDATE()) AS age
    FROM  (select '1952-01-12' as DTA  union all
           select '1965-02-01' as DTA  union all
           select '1978-03-04' as DTA  union all
           select '1978-01-19' as DTA  union all
           select '1981-06-02' as DTA  union all
           select '1982-02-28' as DTA  union all
           select '1982-03-10' as DTA  union all
           select '1983-01-16' as DTA) as TMP
    WHERE MONTH(TMP.DTA) = MONTH(NOW()) 
      AND DAY(TMP.DTA) = DAY(NOW()) 
    ;
    Résultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    1983-01-16	36
    1983-01-16	36

Discussions similaires

  1. Réponses: 3
    Dernier message: 10/08/2015, 16h30
  2. Probleme de date dans requete sql de supression
    Par scons dans le forum VBA Access
    Réponses: 3
    Dernier message: 11/08/2008, 09h01
  3. Probleme de date dans requete SQL vers base de donnée MS Access
    Par Uren dans le forum Persistance des données
    Réponses: 1
    Dernier message: 04/08/2008, 13h06
  4. Réponses: 3
    Dernier message: 18/09/2006, 20h55
  5. probleme avec requete sql aime pas les strings
    Par lil_jam63 dans le forum Bases de données
    Réponses: 3
    Dernier message: 24/02/2004, 14h45

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