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

SQL Oracle Discussion :

rechercher valeur à partir d'une date


Sujet :

SQL Oracle

  1. #1
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    236
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 236
    Points : 78
    Points
    78
    Par défaut rechercher valeur à partir d'une date
    Bonjour

    J'ai une table qui contient le taux de conversion de devise à différentes dates et j'aimerais connaitre le taux de conversion pour une certaine date.

    EX : table devise

    id date_devise taux_conversion
    1 2004/01/02 0,79
    2 2010/06/10 0,73
    3 2010/06/17 0,81

    et j'aimerais savoir quel était le taux de conversion en 2010/02/01 (=date_prov)

    J'ai fait pour l'instant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    select 
    num_prov,
    date_prov,
    taux_conversion
    from prov, devise
    where 
    date_prov >= (select min(date_devise) from devise)
    Mais ca ne suffit pas pour avoir le bon taux....
    Vous pourriez m'aider?
    Y'a t'il des fonctions oracle qui permettent d'obtenir la bonne valeur simplement?
    Merci

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    Vous pouvez utiliser solution avec fonction de fenêtrage :
    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
    19
    With devise as
    (
    select 1 as id, date '2004-01-02' as dt_dev, 0.79 as tx_conv from dual union all
    select 2      , date '2010-06-10'          , 0.73            from dual union all
    select 3      , date '2010-06-17'          , 0.81            from dual
    )
      ,  sr as
    (
    select id, dt_dev, tx_conv,
           row_number() over(order by dt_dev asc) as rn
      from devise
     where dt_dev >= date '2010-02-01'
    )
    select id, dt_dev, tx_conv
      from sr
     where rn = 1;
     
    ID	DT_DEV	TX_CONV
    2	2010-06-10	0.73
    Si vous voulez utiliser min(), il faut faire ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    select *
      from devise
     where dt_dev = (select min(dt_dev)
                       from devise
                      where dt_dev >= date '2010-02-01');

  3. #3
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    236
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 236
    Points : 78
    Points
    78
    Par défaut
    Super, ca fonctionne!
    Merci pour ta réponse rapide!

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

Discussions similaires

  1. [AC-2003] Recherche a partir d'une date
    Par cosmonaute666 dans le forum VBA Access
    Réponses: 2
    Dernier message: 22/06/2009, 14h50
  2. recherche fonction retournant numero du jour de la semaine à partir d'une date
    Par Cogito.11 dans le forum Développement de jobs
    Réponses: 5
    Dernier message: 22/06/2009, 11h10
  3. Recherche a partir d'une date
    Par p'tite Sandrine dans le forum Access
    Réponses: 9
    Dernier message: 14/02/2007, 11h49
  4. [D7] trouver une semaine partir d'une date
    Par raoulmania dans le forum Langage
    Réponses: 3
    Dernier message: 01/12/2005, 10h36
  5. Réponses: 3
    Dernier message: 19/04/2002, 00h11

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