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 :

[Oracle] Transformer nombre jour en date


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 71
    Par défaut [Oracle] Transformer nombre jour en date
    Bonjour,

    J'ai un champs qui contient enregistre une date sous la forme d'un nombre de jour depuis le 1 janvier 2001 dans une base Oracle. Par exemple 14556.
    Il faudrais qu'à l'aide d'une requête SQL, j'affiche cette date sous le format jj/mm/aaaa.

    Merci d'avance pour votre aide.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    349
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 349
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
      1* select to_char (to_date('01/01/2001','DD/MM/RRRR') + 14556,'DD/MM/RRRR') from dual
    SQL> /
     
    TO_CHAR(TO
    ----------
    08/11/2040
     
    SQL>

    CDLT.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 71
    Par défaut
    Merci pour ta réponse. J'aurais besoin également besoin de faire marcher cette requête sur une base sql server.
    Est-ce que cette requête sera générique ou je devrais en écrire une autre ?

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 673
    Par défaut
    Citation Envoyé par pegase06
    Est-ce que cette requête sera générique ou je devrais en écrire une autre ?
    Sans connaître SQL Server, je ne pense pas dire d'ânerie en prétendant que cette requête n'est pas générique mais le mieux est encore de tester... et de nous dire

  5. #5
    Xo
    Xo est déconnecté
    Membre Expert
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 52

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Par défaut
    TO_CHAR et TO_DATE sont des fonctions spécifiques à oracle, il faut donc trouver les fonctions de transtypage correspondantes (regarde du côté de CAST).
    "Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément." Nicolas Boileau

    "Expliquer empêche de comprendre si cela dispense de chercher"

    Quiz Oracle : venez tester vos connaissances !

    La FAQ Oracle : 138 réponses à vos questions
    Aidez-nous à la compléter

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    349
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 349
    Par défaut
    ne connaissant pas SQLServer j'ai néamoins trouvé ceci :

    http://vb.developpez.com/faq/?page=Dates#dateadd

    essaies de regarder par là ...
    par là aussi :

    Some other functions that can be used for various purposes are DATEADD, DATEDIFF, DATENAME, DATEPART, DAY, GETDATE, MONTH, and YEAR. Here's some further detail on these functions as well as a code sample showing their use:

    Dateadd: Returns a new datetime value based on adding an interval to the specified date.

    Syntax: DATEADD ( datepart, number, date )


    Datediff: Returns the number of date and time boundaries crossed between two specified dates.

    Syntax: DATEDIFF ( datepart, startdate, enddate )

    Datename: Returns a character string representing the specified datepart of the specified date.

    Syntax: DATENAME ( datepart, date )

    Datepart: Returns an integer representing the specified datepart of the specified date.

    Syntax: DATEPART ( datepart, date )

    Day: Returns an integer representing the day datepart of the specified date.

    Syntax: DAY ( date )

    Getdate: Returns the current system date and time in the Microsoft® SQL Server™ standard internal format for datetime values.

    Syntax: GETDATE ( )

    Month: Returns an integer that represents the month part of a specified date.

    Syntax: MONTH ( date )

    Year: Returns an integer that represents the year part of a specified date.

    Syntax: YEAR ( date )

    declare @datevar datetime
    select @datevar = getdate()

    /*Example for getdate() : getting current datetime*/
    select getdate() [Current Datetime]

    /*Example for dateadd : getting date 7 days from current datetime*/
    select dateadd(dd, 7, @datevar) [Date 7 days from now]


    /*Example for datediff : getting no of days passed since 01-01-2004*/
    select datediff(dd,'20040101',@datevar) [No of days since 01-01-2004]

    /*Example for datename : getting month name*/
    select datename(mm, @datevar) [Month Name]

    /*Example for datepart : getting week from date*/
    select datepart(wk, @datevar ) [Week No]

    /*Example for day : getting day part of date*/
    select day (@datevar) [Day]

    /*Example for month : getting month part of date*/
    select month(@datevar) [Month]

    /*Example for year : getting year part of date*/
    select year(@datevar) [Year]


    CDLT.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 71
    Par défaut
    Pour sql server, j'ai écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT DATEADD(day, 14556, '01/01/2001')
    Ca me semble correcte.

  8. #8
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    349
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 349
    Par défaut
    alors [RESOLU] ?

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

Discussions similaires

  1. transformer un nombre de jours en dates
    Par k6971 dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 15/03/2007, 14h30
  2. [ORACLE 10G]Incrémentation d'une date d'un jour
    Par titanblanc dans le forum Oracle
    Réponses: 2
    Dernier message: 05/01/2006, 11h07
  3. Réponses: 2
    Dernier message: 03/01/2006, 14h58
  4. [Dates] Nombre jours ouvrés entre deux dates
    Par Yali dans le forum Langage
    Réponses: 4
    Dernier message: 28/12/2005, 12h05
  5. [Dates] Soustraire un nombre de jour à une date
    Par lesgars dans le forum Langage
    Réponses: 2
    Dernier message: 09/12/2005, 14h43

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