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

Langage SQL Discussion :

Convertir le format d'une date lors d'un select


Sujet :

Langage SQL

  1. #1
    Membre régulier
    Inscrit en
    Juin 2010
    Messages
    359
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 359
    Points : 77
    Points
    77
    Par défaut Convertir le format d'une date lors d'un select
    Bonjour,

    Souhaitant faire une extraction pour inclure dans un fichier excel, je voudrais donc convertir le format de mon champs DATE_CG (20150701) dans le format suivant: 01/07/2015.

    Je ne souhaite absolument pas changer le format de date du champ de cette table mais uniquement obtenir un affichage différent lors d'un select.

    Je n'ai pour l'instant pas trouvé de syntaxe qui parvienne à mes fins...

    Merci d'avance.
    Microsoft SQL Server Management Studio v17.9.1

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 801
    Points
    30 801
    Par défaut
    Les fonctions de conversion de date en chaine ne sont pas normalisées.
    Quel est ton SGBD ?
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre régulier
    Inscrit en
    Juin 2010
    Messages
    359
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 359
    Points : 77
    Points
    77
    Par défaut
    Il s'agit d'oracle.
    Microsoft SQL Server Management Studio v17.9.1

  4. #4
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 947
    Points : 5 846
    Points
    5 846
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    to_char(la_date,'dd/mm/yyyy')

  5. #5
    Membre régulier
    Inscrit en
    Juin 2010
    Messages
    359
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 359
    Points : 77
    Points
    77
    Par défaut
    Alors j'ai tapé la syntaxe suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select to_char(date_cg, 'dd/mm/yyyy') from T_IMMAT_AAA_VPN;
    et j'ai eu comme erreur modèle de format numérique non valide.

    Est-ce que je me suis trompé dans la syntaxe ou est-ce que le format du champ n'est pas comme il faut?
    Microsoft SQL Server Management Studio v17.9.1

  6. #6
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 801
    Points
    30 801
    Par défaut
    Est-ce que ta colonne DATE_CG est bien de type DATE ?
    Au vu du message, il semblerait que ce n'est pas le cas.

    Il ne te reste plus qu'à faire une double conversion :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TO_CHAR(TO_DATE(date_cg, 'yyyymmdd'), 'dd/mm/yyyy')
    Si tu en as la possibilité, modifie le type de ta colonne. Tu n'en retireras que des avantages.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  7. #7
    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
    Et si DATE_CG est un NUMBER, il faudra même faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TO_CHAR(TO_DATE(TO_CHAR(date_cg), 'yyyymmdd'), 'dd/mm/yyyy')

  8. #8
    Membre régulier
    Inscrit en
    Juin 2010
    Messages
    359
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 359
    Points : 77
    Points
    77
    Par défaut
    Citation Envoyé par al1_24 Voir le message
    Est-ce que ta colonne DATE_CG est bien de type DATE ?
    Au vu du message, il semblerait que ce n'est pas le cas.

    Il ne te reste plus qu'à faire une double conversion :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TO_CHAR(TO_DATE(date_cg, 'yyyymmdd'), 'dd/mm/yyyy')
    Si tu en as la possibilité, modifie le type de ta colonne. Tu n'en retireras que des avantages.
    Ça marche très bien.

    Merci.
    Microsoft SQL Server Management Studio v17.9.1

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 07/06/2011, 14h50
  2. [AC-2003] Convertir le format d'une date
    Par dark_geek dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 23/05/2009, 12h22
  3. commant changer le format d'une date?
    Par tribaleur dans le forum ASP
    Réponses: 5
    Dernier message: 02/06/2006, 07h55
  4. Comment intégrer une date lors de compilation?
    Par Xavier dans le forum C++Builder
    Réponses: 8
    Dernier message: 19/05/2006, 18h42
  5. [C#] Serveur anglais : format d'une date
    Par FoxDeltaSierra dans le forum ASP.NET
    Réponses: 5
    Dernier message: 18/01/2006, 16h21

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