Je veux juste formater la date actuelle en yyyymmdd
dans DB2.
Je vois les formats de date disponibles, mais comment les utiliser?
SELECT CURDATE() FROM SYSIBM.SYSDUMMY1;
Je ne vois aucun moyen simple d'utiliser les formats énumérés ci-dessus.
Toute suggestion?
SELECT VARCHAR_FORMAT(CURRENT TIMESTAMP, 'YYYYMMDD')
FROM SYSIBM.SYSDUMMY1
Devrait fonctionner à la fois sur l'ordinateur central et Linux/Unix/Windows DB2. Entrée Info Center pour VARCHAR_FORMAT()
.
Une autre solution REMPLACER (CHAR (date actuelle, ISO), '-', '')
Ce n'est pas simple, mais
SELECT CHAR(CURRENT DATE, ISO) FROM SYSIBM.SYSDUMMY1
renvoie la date actuelle au format aaaa-mm-jj. Vous devrez sous-chaîne et concaténer le résultat pour obtenir aaaammjj.
SELECT SUBSTR(CHAR(CURRENT DATE, ISO), 1, 4) ||
SUBSTR(CHAR(CURRENT DATE, ISO), 6, 2) ||
SUBSTR(CHAR(CURRENT DATE, ISO), 9, 2)
FROM SYSIBM.SYSDUMMY1
La date actuelle est en yyyy-mm-dd
format. Vous pouvez le convertir au format yyyymmdd
en utilisant la fonction substring
:
select substr(current date,1,4)||substr(current date,6,2)||substr(currentdate,9,2)