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 :

Mettre une condition sur une colonne en splitant une partie ?


Sujet :

Langage SQL

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 145
    Points : 61
    Points
    61
    Par défaut Mettre une condition sur une colonne en splitant une partie ?
    Bonjour,

    J'ai une table annonce dans lequel j'ai une colone qui se nome datecreation.
    Dans cette colonne, je stocke une date sous la forme anneemoisjourheure (ex: 20080118132445, en gras les heures). Ce que je voudrais c'est creer une requete qui me permet de compter le nombre d'annonce qui existe par jour. Le problème se situe au niveau de l'heure, car impossible de savoir avec ma requete ci dessous de connaitre le nombre d'annonce creer par jour.

    Comment je pourrais faire pour creer une requete sans prendre en compte les heures du champ datecreation.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT count(*) FROM annonce GROUP BY datecreation
    Je vous remercie d'avance !


  2. #2
    Membre expérimenté Avatar de scheu
    Inscrit en
    Juin 2007
    Messages
    1 506
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 1 506
    Points : 1 734
    Points
    1 734
    Par défaut
    Ce n'est pas judicieux de stocker une date au format number, tu devrais plutôt la stocker au format date ou timestamp relatif à ta base pour pouvoir justement utiliser facilement les fonctions sur les dates
    La théorie, c'est quand on sait tout mais que rien ne fonctionne.
    La pratique, c'est quand tout fonctionne mais que personne ne sait pourquoi.
    Ici, nous avons réuni théorie et pratique : Rien ne fonctionne ... et personne ne sait pourquoi !

    Réplication de base avec Postgresql : http://scheu.developpez.com/tutoriel.../log-shipping/

  3. #3
    Membre expérimenté Avatar de scheu
    Inscrit en
    Juin 2007
    Messages
    1 506
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 1 506
    Points : 1 734
    Points
    1 734
    Par défaut
    enfin si c'est vraiment ce que tu veux faire, essaie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT trunc(datecreation/1000000,0) date_jour, count(*) nb_annonces 
    FROM annonce 
    GROUP BY trunc(datecreation/1000000,0)
    ORDER BY date_jour
    La théorie, c'est quand on sait tout mais que rien ne fonctionne.
    La pratique, c'est quand tout fonctionne mais que personne ne sait pourquoi.
    Ici, nous avons réuni théorie et pratique : Rien ne fonctionne ... et personne ne sait pourquoi !

    Réplication de base avec Postgresql : http://scheu.developpez.com/tutoriel.../log-shipping/

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    145
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 145
    Points : 61
    Points
    61
    Par défaut
    J'ai trouve la solution à l'aide de la requete ci-dessous

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT substring(datecreation,1,8), count(substring(datecreation,1,8)) FROM annonce GROUP BY substring(datecreation,1,8)
    Merci pour vos reponse

  5. #5
    Membre expérimenté Avatar de scheu
    Inscrit en
    Juin 2007
    Messages
    1 506
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 1 506
    Points : 1 734
    Points
    1 734
    Par défaut
    ta date est stockée en tant que chaine de caractère et pas en nombre ?
    La théorie, c'est quand on sait tout mais que rien ne fonctionne.
    La pratique, c'est quand tout fonctionne mais que personne ne sait pourquoi.
    Ici, nous avons réuni théorie et pratique : Rien ne fonctionne ... et personne ne sait pourquoi !

    Réplication de base avec Postgresql : http://scheu.developpez.com/tutoriel.../log-shipping/

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 25/05/2011, 07h16
  2. Réponses: 9
    Dernier message: 23/06/2008, 15h54
  3. [VBA-E] Minimum d'une colonne avec condition sur autre colonne
    Par Currahee dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 10/05/2007, 17h01
  4. Réponses: 3
    Dernier message: 03/05/2007, 11h06
  5. Réponses: 1
    Dernier message: 08/09/2006, 10h31

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