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 et SQL. Discussion :

Requete grouper par trimestre


Sujet :

Requêtes et SQL.

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2005
    Messages : 43
    Points : 15
    Points
    15
    Par défaut Requete grouper par trimestre
    Bonjour,

    je cherche effecteur une requete qui me permettrait de grouper des enregistrements par trimestre...

    Je m'explique plus clairement :
    ma table contient un certain nombre de champ dont une clef et un champ date de reception qui se présente ainsi :
    1;04/01/2006
    2;05/01/2006
    3;05/01/2006
    ...
    1512;30/12/2006

    Je cherche donc à compter le nombre d'enregistrement par trimestre ?

    Quelqu'un aurait il une astuce pour y arriver !

    merci par avance.

  2. #2
    Membre régulier Avatar de choubak
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    123
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 123
    Points : 82
    Points
    82
    Par défaut
    une année est composé de 4 trimestres
    1er trimestre du 1 janvier au 31 mars
    2eme trimestre du 1 avril au 30 juin
    3eme trimestre du 1 juillet au 30 septembre
    4eme trimestre du 1 octobre au 31 decembre

    Ensuite tu selectionne les date comprise entre chaque intervalle

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2005
    Messages : 43
    Points : 15
    Points
    15
    Par défaut
    ok
    comment tu le traduis en terme de requete ?

  4. #4
    Membre régulier Avatar de choubak
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    123
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 123
    Points : 82
    Points
    82
    Par défaut
    Pour le trimestre 1
    select monchamp as trimestre1 from matable where monchamp>=datedebutdutrimestre1 and <=datefindutrimestre1

    pour l'année des dates des trimestres tu concatene avec l'année de ton champ
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CDate(Format("01/01/", "dd/mm/") & " " & Year([nomchamp]))
    un truc comme ca

  5. #5
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Bonjour,

    Je pense que tu peux adapter ça pour des dates :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    mysql = ""
    mysql = mysql & "SELECT Dates, "
    mysql = mysql & "Count(IIf([Heures] Between #00:00:00# And #12:00:00#,[Heures])) AS [Matin], "
    mysql = mysql & "Count(IIf([Heures] Between #12:00:01# And #18:00:00#,[Heures])) AS [Après midi], "
    mysql = mysql & "Count(IIf([Heures] Between #18:00:01# And #23:59:59#,[Heures])) AS [Soirée], "
    mysql = mysql & "Count([Heures]) As [Total] "
    mysql = mysql & "From LaTable "
    mysql = mysql & "GROUP BY Dates "

  6. #6
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SELECT  "trimestre " & (Month([madate])+2)\3 AS trimestre
    FROM matable;

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2005
    Messages : 43
    Points : 15
    Points
    15
    Par défaut
    ok je teste tout ca et vous tiens informé

    merci

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2005
    Messages : 43
    Points : 15
    Points
    15
    Par défaut
    Citation Envoyé par random
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SELECT  "trimestre " & (Month([madate])+2)\3 AS trimestre
    FROM matable;

    super ! Ca marche.

    Merci beaucoup

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2005
    Messages : 43
    Points : 15
    Points
    15
    Par défaut
    merci pour les trimestres, je souhaiterais également réaliser la même opération mais par semestre.
    J'ai essayé d'adapter le code précédent sans succès...

    merci par avance

  10. #10
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SELECT  "semestre " & iif(Month([madate])<7;1;2) AS semestre
    FROM matable;

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2005
    Messages : 43
    Points : 15
    Points
    15
    Par défaut
    merci ! reponse rapide et efficace !!

    juste pour info a quoi correspond la fonction iif

  12. #12
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    à une fonction de

    sans iif:

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

Discussions similaires

  1. grouper par trimestre
    Par lazzeroni dans le forum Oracle
    Réponses: 3
    Dernier message: 30/05/2006, 16h18
  2. Debutant - Requête Grouper par Date
    Par ghan77 dans le forum Bases de données
    Réponses: 3
    Dernier message: 06/12/2005, 18h07
  3. grouper par une partie d'attribut
    Par vplf dans le forum Langage SQL
    Réponses: 19
    Dernier message: 21/01/2005, 17h31
  4. Réponses: 5
    Dernier message: 29/09/2004, 12h05
  5. résultat d'une requete affiché par mois
    Par zorely dans le forum Langage SQL
    Réponses: 7
    Dernier message: 03/05/2004, 08h18

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