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

Oracle Discussion :

creation vue sur une periode


Sujet :

Oracle

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2
    Points : 1
    Points
    1
    Par défaut creation vue sur une periode
    Bonjour,

    Voici ma question :

    je dois sélectionner des informations dans une table pour une periode
    (date debut - date fin)

    pour obtenir un resultat comme suit

    jour mnt1 mnt2
    ----------------------------------------
    d1(lun) 10 50
    d2(mar) -- -- (pas de ligne dans la table pour cette date)
    d3(mer) 60 70
    d4(jeu) 10 20
    d5(ven) 30 60
    d6(sam) 50 30
    d7(dim) 0 0


    disons que pour recuperer mnt1 et mnt2 la requete est

    select mnt1, mnt2 from matable where date between d1 and d7

    j'ai besoin alors de quelque chose pour generer

    d1 à d7

    pour avoir quelque chose comme

    select vue1.date, vue2.mnt1, vue2.mnt2
    from
    ( date provenant ?) vue1,
    (select date, mnt1, mnt2 from matable where date between d1 and d7) vue2
    where vue1.date = vue2.date(+)


    quelqu'un sait comment générer ma période (vue1) me retournant les dates comprises dans l'intervalle d1 à d7

    remarques dans "matable" toutes les dates ne sont pas présente !

    merci

  2. #2
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    complement d'information

    si d1 - d7 compris entre 10/01/2005 au 16/01/2005

    select to_date('10/01/2005','dd/mm/yyyy') fecha from dual
    union
    select to_date('11/01/2005','dd/mm/yyyy') fecha from dual
    union
    select to_date('12/01/2005','dd/mm/yyyy') fecha from dual
    union
    select to_date('13/01/2005','dd/mm/yyyy') fecha from dual
    union
    select to_date('14/01/2005','dd/mm/yyyy') fecha from dual
    union
    select to_date('15/01/2005','dd/mm/yyyy') fecha from dual
    union
    select to_date('16/01/2005','dd/mm/yyyy') fecha from dual

    et ça marche mais je prefererer une solution plus elegante et dynamique

    merci

  3. #3
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    Merci de nous préciser votre version d'Oracle et d'utiliser les balises de formatage pour les exemples de code.

    Voici une astuce pour générer une liste de date:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    SQL> select to_date('10/01/2006')+ rn  from (select rownum rn from dual connect
    by rownum <=10);
     
    TO_DATE(
    --------
    11/01/06
    12/01/06
    13/01/06
    14/01/06
    15/01/06
    16/01/06
    17/01/06
    18/01/06
    19/01/06
    20/01/06
     
    10 rows selected.

Discussions similaires

  1. somme d'un champ sur une periode
    Par aldama dans le forum IHM
    Réponses: 5
    Dernier message: 08/05/2009, 16h02
  2. [JTable] centrer la vue sur une ligne
    Par vanhel dans le forum Composants
    Réponses: 1
    Dernier message: 20/08/2008, 12h12
  3. [JTable]Positionner la vue sur une ligne
    Par doGet dans le forum Composants
    Réponses: 6
    Dernier message: 19/02/2008, 14h42
  4. groupement de donnees sur une periode de temps
    Par ElBisounours dans le forum SQL
    Réponses: 5
    Dernier message: 12/06/2007, 11h59

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