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 :

GRoup by sur un champ datetime


Sujet :

Langage SQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 93
    Points : 51
    Points
    51
    Par défaut GRoup by sur un champ datetime
    Bonjour, voici mon soucis :
    J'ai besoin de grouper les résultats de ma requête par jour sous mysql.
    Manque de bol mon champ est en dateTIME ! Du coup forcement, à moins d'avoir deux entrées à la seconde ça groupe pas grand chose.

    Le but : Compter le nombre de demande par jour pour une enseigne.
    La requête, pourtant toute bête :
    SELECTdate, COUNT(id)
    FROM candidat_demande
    WHERE idenseigne = '663'
    GROUP BY date
    J'ai bien regarder sur le net, il y a des cast et des convert qui semblerait pouvoir convenir mais je n'ai pas réussi à les faire fonctionner, faut dire que le nom du champ n'aide peut être pas "date"... C'est source d'erreur peut être.

    Bref, si vous pouviez m'aider je vous en serais reconnaissant !

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Points : 2 890
    Points
    2 890
    Par défaut
    Une des possibilités est d'utiliser un cast vers le type date:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     select cast(colonne_datetime as date) from ... group by cast(colonne_datetime as date)
    Cette façon de faire a l'avantage d'être plus portable que de passer par les fonctions spécifiques du SGBD, chacun ayant ses propres fonctions.

    Si le nom de la colonne pose un problème à l'analyseur lexical, il faut le mettre entre quotes. Dans le cas de MySQL, les quotes à utiliser sont en fait des backquotes (`date`), sur les autres SGBDs ce sera plutôt des guillemets.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 93
    Points : 51
    Points
    51
    Par défaut
    Youuuuuouuuuuuuuuuu ! Merci ! Trop fort, trop rapide... j'adore ce forum !

    Merci encore !

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

Discussions similaires

  1. [Toutes versions] Requêtes Group By sur 2 champs
    Par Stepsbysteps dans le forum Access
    Réponses: 2
    Dernier message: 28/10/2013, 12h20
  2. Regroupement sur un champ DATETIME
    Par Madfrix dans le forum Requêtes
    Réponses: 3
    Dernier message: 18/11/2010, 15h56
  3. Réponses: 1
    Dernier message: 22/09/2009, 10h02
  4. Détecter une différence de 30min sur un champ datetime
    Par Louis-Guillaume Morand dans le forum Requêtes
    Réponses: 2
    Dernier message: 28/07/2007, 11h23
  5. [Access] Comment gérer le filtrage sur un champs DateTime ?
    Par mappy dans le forum Accès aux données
    Réponses: 7
    Dernier message: 12/07/2006, 15h49

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