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 :

Cumul pour chaque année


Sujet :

Requêtes et SQL.

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

    Informations forums :
    Inscription : Avril 2009
    Messages : 12
    Points : 7
    Points
    7
    Par défaut Cumul pour chaque année
    Bonjour
    Cela fait deux jours que je fais des recherches et je trouve pas de solution pour effectuer ma requête. Donc je me tourne vers vous.
    J'ai une table SINISTRES contenant beaucoup de champs dont num_sinistre comme clé primaire et date_droc.

    A partir des ces deux champs j'ai créer la requête suivante :
    - le nombre de sinistres par année de DROC (2000 comme première année)
    Année de Droc | NbSinistre
    2000 --------------- 1027
    2001 --------------- 748
    2002 --------------- 781
    2003 --------------- 624
    ... ----------------- ...
    2009 --------------- 5

    - l'autre c'est le cumul des nombres de sinistres des année suivantes pour l'année 2000 qui utilise la première requête.
    N (=2000) | CUMUL
    N --------------- 1027
    N + 1 ------------- 1775 = (1027 + 748)
    N + 2 ------------- 2556 = (1775 +781)
    N + 2 ------------- 3180
    ... ------------- ...
    N + 9 ------------- 4824

    Ce que je veux c'est avoir le cumul pour les autres années. Donc pour N = 2001, ..., 2009

  2. #2
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 383
    Points : 19 805
    Points
    19 805
    Billets dans le blog
    66
    Par défaut
    Salut,

    tu peux t'inspirer de cette requête :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT Sinistres.Annee, (select sum(NbSinistres) from Sinistres t1 where t1.Annee<=Sinistres.Annee) AS cumul
    FROM Sinistres;

    A+

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

    Informations forums :
    Inscription : Avril 2009
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    merci

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

    Informations forums :
    Inscription : Avril 2009
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Bonjour
    J'ai une autre requête que je dois faire et je ne vois pas comment l'effectuer.
    Cette fois j'ai un champs de plus à utiliser. Donc j'ai toujours ma table SINISTRES avec mes champs num_sinistre et date_droc et je dois en plus utiliser le champs date_j
    Donc j'ai fait une requête qui me donne le nombre de sinistre pour l'année du sinistre(date_j) par année de droc:

    Année de Droc | Année de sinistre |NbSinistre
    2000 --------------2000----------------- 14
    2000 --------------2001----------------- 133
    2000 --------------2002----------------- 207
    2000 --------------2003----------------- 155
    ... -------------- ...----------------- ...
    2001 --------------2001----------------- 10
    2001 --------------2002----------------- 105
    2001 --------------2003----------------- 85
    ... -------------- ...----------------- ...
    2008 --------------2008----------------- 7
    2008 --------------2009----------------- 18
    2009 --------------2009----------------- 5


    Ce que je veux c'est avoir le cumul des Nbsinistres pour les années du sinistres et cela pour chaque années de doc donc :

    Année de Droc | Année de sinistre |NbSinistre
    2000 --------------2000----------------- 14
    2000 --------------2001----------------- 147 (14 + 133)
    2000 --------------2002----------------- 354 (207 +147)
    2000 --------------2003----------------- 509 (354 + 155)
    ... -------------- ...----------------- ...
    2001 --------------2001----------------- 10
    2001 --------------2002----------------- 115 (10 + 105)
    2001 --------------2003----------------- 200 (85 +115)
    ... -------------- ...----------------- ...
    2008 --------------2008----------------- 7
    2008 --------------2009----------------- 25 (7 + 18)
    2009 --------------2009----------------- 5

  5. #5
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 383
    Points : 19 805
    Points
    19 805
    Billets dans le blog
    66
    Par défaut
    Re,

    Normalement tu aurais dû clore la discussion, vu que ton problème a été résolu.

    Il faut bien te rendre compte du service que ce forum peut t'apporter et du temps que tu gagnes grâce aux intervenants qui veulent bien t'aider...

    Pour ta requête il suffit juste d'ajouter un critère sur le champ AnneeDroc par rapport au 1er sql:

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT reqSinistres.AnneeDroc, reqSinistres.AnneeSin, (SELECT sum(NbSinistres) FROM reqSinistres r1 WHERE (r1.AnneeSin<=reqSinistres.AnneeSin) and (r1.AnneeDroc=reqSinistres.AnneeDroc)) AS Cumul
    FROM reqSinistres;

    reqSinistres désigne la dernière requête que tu as faite...

    A+

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Merci et désolé je ne savait pas.

  7. #7
    Nouveau Candidat au Club
    Inscrit en
    Mai 2010
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 1
    Points : 1
    Points
    1
    Par défaut création d'un Etat sous access 2003
    Bonjour je suis dans un stage où je dois creer une fiche d'ordonnancement et l'afficher sous forme de tableau à partir d'un Etat des requetes et une macro.
    j'ai réussie à faire l'affichage de la carte mais une colonne me pose problème car j'ai une colonne qui se nomme "Date Planifié" que et je dois afficher à chaque fois la même date si dans le champs "Num" j'ai le même numéro sachant que le champs "Num" est importé d'une table qui se trouve dans sql serveur 2005 et que le champs "date planifié" se trouve dans une de mes tables crées sous access. je suis bloqué actuellement merci de me m'aider svp je suis là pour de plus informations

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

Discussions similaires

  1. [XL-2010] Générer un calendrier pour chaque année
    Par Ginette54 dans le forum Excel
    Réponses: 10
    Dernier message: 29/09/2013, 10h43
  2. [Toutes versions] Déterminer le nombre de jours pour chaque année fiscale, entre deux dates données
    Par mikeactuaire dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 09/09/2011, 12h42
  3. Réponses: 1
    Dernier message: 09/03/2011, 10h39
  4. [SQL] Sélectionner un mois pour chaque année
    Par kreatik dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 07/06/2007, 14h35
  5. Moyenne 5 dernières année pour chaque année?
    Par kissmytoe dans le forum Langage SQL
    Réponses: 7
    Dernier message: 15/02/2006, 19h28

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