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 :

Requête avec différents formats de date


Sujet :

Requêtes MySQL

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 9
    Points : 6
    Points
    6
    Par défaut Requête avec différents formats de date
    Bonjour,

    après pas mal de recherche sur le net et d'essai, je demande un petit coup de main

    J'ai une requête UNION avec laquelle j'interroge deux tables. Seulement la date d'une table est en format ISO et l'autre est en TIMESTAMP.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $req3 = "SELECT accountcode, calldate AS Date
    FROM t
    WHERE accountcode = '$code_connexion_envoie'
    UNION ALL
    SELECT code_connexion, date_debut AS Date
    FROM ligne_temps
    WHERE code_connexion = '$code_connexion_envoie'
    ORDER BY Date DESC";
    calldate est en ISO, donc format "AAAA-MM-JJ HH:MM:SS"
    date_debut est en TIMESTAMP, exemple "1271591269"

    J'ai essayé pas mal de chose, des 'convert', 'date_format', etc. mais rien n'aboutit.

    Si quelqu'un a une idée ça m'aiderai bien

    Merci beaucoup.

  2. #2
    Membre habitué Avatar de lou-03
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 156
    Points : 153
    Points
    153
    Par défaut
    Bonjour,

    Peux-tu changer le type de ton champ date? Ou justement dois-tu garder ces types?

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Les champs ne peuvent pas être changés dans la base car déjà en fonction depuis un certain temps et utilisés par d'autres requêtes tel-quel.

  4. #4
    Membre éprouvé Avatar de Oishiiii
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2009
    Messages
    508
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2009
    Messages : 508
    Points : 1 104
    Points
    1 104
    Par défaut
    Bonsoir,

    Citation Envoyé par Ethan831 Voir le message
    calldate est en ISO, donc format AAAA-MM-JJ HH:MM:SS
    date_debut est en TIMESTAMP
    Chez MySQL, les valeurs des colonnes de type TIMESTAMP sont justement représentées sous la forme AAAA-MM-JJ HH:MM:SS...

    A défaut d'avoir le script de création des tables, montrez-nous au moins un exemple de dates pour ces 2 colonnes.

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Ce que j'ai appelé ISO donne
    2010-03-27 13:26:52
    Et ce que j'ai appelé TIMESTAMP donne
    1271591269
    Attention, ce n'est pas la même date, 1271591269 équivaut à 18/04/2010 13:47:49

    Il me semble que mes appellations sont corrects mais je suis peut être mal renseigné

  6. #6
    Membre éprouvé Avatar de Oishiiii
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2009
    Messages
    508
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2009
    Messages : 508
    Points : 1 104
    Points
    1 104
    Par défaut
    Citation Envoyé par Ethan831 Voir le message
    Il me semble que mes appellations sont corrects mais je suis peut être mal renseigné
    Ça dépend du contexte, et ne connaissant toujours pas le type des colonnes... je suppose que c'est un type entier.
    MySQL a une fonction dédiée à cela FROM_UNIXTIME().
    Essayez:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT accountcode, calldate AS Date
    FROM t
    WHERE accountcode = '$code_connexion_envoie'
    UNION ALL
    SELECT code_connexion, FROM_UNIXTIME(date_debut) AS Date
    FROM ligne_temps
    WHERE code_connexion = '$code_connexion_envoie'
    ORDER BY Date DESC

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    ça fonctionne avec
    FROM_UNIXTIME(date_debut)
    je te remercie beaucoup.

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

Discussions similaires

  1. Requête avec travail sur les dates
    Par masseur dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 16/07/2008, 12h11
  2. Requête avec un intervalle de date
    Par heruwenli dans le forum SQL
    Réponses: 4
    Dernier message: 26/06/2008, 12h46
  3. Problème avec les Formats de Date
    Par sebac dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 08/01/2008, 15h30
  4. Requête avec comparaison pour la date
    Par buzz! dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 10/08/2006, 17h00
  5. Requête avec Expr1: Format([Date];"ee")
    Par grenet dans le forum Access
    Réponses: 6
    Dernier message: 06/03/2006, 16h02

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