J'ai une colonne de dates dont la structure est yyyymmdd (sans séparateurs).
Je veux la mettre en format date SQL à savoir yyyy-mm-dd.
Je sais, c'est tout con mais je bute dessus.
Merci !
Et désolé si la question a déjà été posée 100 fois.
J'ai une colonne de dates dont la structure est yyyymmdd (sans séparateurs).
Je veux la mettre en format date SQL à savoir yyyy-mm-dd.
Je sais, c'est tout con mais je bute dessus.
Merci !
Et désolé si la question a déjà été posée 100 fois.
Tu as essayé la fonction FORMAT?
https://docs.microsoft.com/fr-fr/sql...l-server-ver15
C'est la partie "B. FORMAT avec chaînes de format personnalisées" qui semble intéressante pour ton pb.
DBA Oracle
Rédacteur du blog : dbaoraclesql.canalblog.com
Merci,Ikebukuro !
J'ai essayé ceci mais il me retourne yyyy-mm-dd sur toute la colonne.
Il doit manquer quelque chose à mon code...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SELECT (FORMAT([DATE],'yyyy-mm-dd') AS NEW_DATE FROM Ma_DB
Bonjour,
Votre colonne actuelle doit être au type chaîne.
Donc en changeant son type à date à l'aide d'un ALTER TABLE ... ALTER COLUMN maColonne date vous devriez vous en sortir.
Attention, ça c'est ce que SQL Server Management Studio vous expose, mais ce n'est pas la manière dont est stockée la date dans les pages de données.Je veux la mettre en format date SQL à savoir yyyy-mm-dd.
C'est donc seulement une représentation intelligible par un humain
Quelle était votre requête ?J'ai essayé ceci mais il me retourne yyyy-mm-dd sur toute la colonne.
@++
Merci Elsuket. ma requête était :
En fait, la colonne Date était bizarrement en FLOAT. Avec des amis, on a trouvé deux solutions.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SELECT (FORMAT([DATE],'yyyy-mm-dd') AS NEW_DATE FROM Ma_DB
Avec le CAST ou le CONVERT mais il faut passer du FLOAT au INT puis au VARCHAR et enfin au DATE...
Un peu tordu mais ça marche !
OU ENCORE
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SELECT CONVERT (DATE,(CONVERT(VARCHAR,(CONVERT (INT,[NAISSANCE]))))) AS NAISS_DATE FROM Ma_base;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SELECT TRY_CAST(CAST(CAST([NAISSANCE] AS INT) AS VARCHAR(8)) AS DATE) AS NAISS_DATE FROM Ma_base;
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager