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 PostgreSQL Discussion :

Regroupement par semaine [9.2]


Sujet :

Requêtes PostgreSQL

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2013
    Messages : 46
    Points : 43
    Points
    43
    Par défaut Regroupement par semaine
    bonjour,
    j'aimerais pouvoir choisir mon affichage mais en comparant plusieurs semaine,
    j'arrive à comparer des jours mais pas des semaine, voila ce que j'arrive à faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    select distinct date_c 
    from table
    WHERE date_c>='début de période'
    and date_c<='fin de période'
    order by date_c asc;
    je m'explique au lieu d'avoir des stats au jour le jour (par rapport a la période que j'ai renseignée), j'aimerai avoir une stat par semaine sur la période que j'ai donnée.
    Ex avec le mois de janvier : ce que j'ai maintenant
    | 01/01/2007| 02/01/2007| ,,, | 31/01/2007
    |_____6____|____15____| ... |_____ 4
    |_____4____|____23____| ... |_____ 0
    ce que je voudrais faire :
    | semaine 1 | semaine 2 | ... | semaine 4
    |_____13___|____23___| ... |_____ 60
    |_____17___|____44___| ... |_____ 10

  2. #2
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 679
    Points
    18 679
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2013
    Messages : 46
    Points : 43
    Points
    43
    Par défaut
    bonjour,

    Merci de ta réponse mais lorsque j'utilise la fonction OVER,
    j'ai une ERREUR: erreur de syntaxe sur ou près de « OVER »

    faut-il installer une fonction pour que cela marche ?

  4. #4
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 679
    Points
    18 679
    Par défaut
    Montre-nous la requête
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2013
    Messages : 46
    Points : 43
    Points
    43
    Par défaut
    Voici ma requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT libelle_article, casse_pvttc, casse_pnf OVER (PARTITION BY libelle_article ORDER BY casse_pvttc DESC) FROM casse ;

  6. #6
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 679
    Points
    18 679
    Par défaut
    il faut utiliser une window function avant le over

    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT libelle_article, casse_pvttc, casse_pnf, rank() OVER (PARTITION BY libelle_article ORDER BY casse_pvttc DESC) FROM casse ;

    EDIT: au passage, la partition devrait se faire sur un extract(week from date_c)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT libelle_article, casse_pvttc, casse_pnf, rank() 
       OVER (PARTITION BY extract(week from date_c) ORDER BY casse_pvttc DESC) ) 
       FROM casse ;
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

  7. #7
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2013
    Messages : 46
    Points : 43
    Points
    43
    Par défaut
    Merci beaucoup je n'avais pas du tout compris! ça va mieux !
    Mais comment récupérer la numéro de la semaine ?
    j'ai fais cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT libelle_article, casse_pvttc, casse_pnf, date_casse, rank() 
       OVER (PARTITION BY extract(week FROM date_casse) ORDER BY date_casse DESC) 
       FROM casse 
       where date_casse between '02-03-2013' and '09-03-2013';
    Mais ca me regroupe les mêmes date avec un même nombre !
    comment l'exploiter ?

  8. #8
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 679
    Points
    18 679
    Par défaut
    Essaies cela... sachant que rank est à titre indicatif, normalement il s'agit de ta fonction d'aggrégat ou ta window function pour la stat

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    WITH tbl AS (
       SELECT *, extract(week FROM date_c) as semaine FROM casse
    )
    SELECT libelle_article, casse_pvttc, casse_pnf, semaine, rank() 
       OVER (PARTITION BY semaine ORDER BY casse_pvttc DESC) ) 
       FROM tbl ;
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

  9. #9
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2013
    Messages : 46
    Points : 43
    Points
    43
    Par défaut
    Merci beaucoup, j'ai pas tous compris mais je vais regardé ! c'est ce que je voulais.

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

Discussions similaires

  1. Requête regroupement par semaine
    Par stade13 dans le forum Requêtes
    Réponses: 5
    Dernier message: 05/04/2013, 18h55
  2. Regroupement par semaine
    Par sfoggy dans le forum SQL
    Réponses: 5
    Dernier message: 17/01/2012, 09h00
  3. [AC-2003] Regroupement par semaine
    Par DavidT62 dans le forum Access
    Réponses: 1
    Dernier message: 03/11/2011, 20h26
  4. [Access 2003] regroupement par semaine
    Par bouts dans le forum Langage SQL
    Réponses: 4
    Dernier message: 07/10/2008, 16h44
  5. Requette sur date avec regroupement par semaine
    Par bob75000 dans le forum Access
    Réponses: 6
    Dernier message: 17/07/2006, 15h39

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