Précédent   Forum des professionnels en informatique > Bases de données > DB2
DB2 Forum d'entraide technique sur la base de données DB2. Voir aussi -> Rubrique DB2
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/03/2011, 16h08   #1
Nouveau Membre du Club
 
Inscription : avril 2006
Messages : 276
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 276
Points : 29
Points : 29
Par défaut error sqlcode:-440, dateformat

bonjour,

quel est l'équivalent de dateformat dans db2 svp?
dateformat(date_du_jour,'YYYYMM') me renvoie l'erreur -440

merci!
nawal59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/03/2011, 16h30   #2
Membre actif
 
Inscription : juin 2008
Messages : 146
Détails du profil
Informations personnelles :
Âge : 44

Informations forums :
Inscription : juin 2008
Messages : 146
Points : 183
Points : 183
Bonjour,

Je ne sais pas trop ce qu'est dateformat. Ceci dit, voici un extrait de cours précisant toutes les fonctions de gestion de dates. Je te laisse faire tes "courses" dans cette liste, sachant que c'est un cours compatible DB2 ZOS V7. Depuis, V8 et V9 sont sorties avec quelques nouveautés, mais, sauf erreur de ma part, rien de vraiment important concernant les fonctions de gestion de date.


ADD_MONTHS(exp1, exp2)
Renvoie la date égale à exp1 à laquelle on ajoute exp2 mois.
Exp1 doit être TIMESTAMP ou DATE.
Exp2 doit être numérique.
Si Exp1 est le dernier jour d’un mois, alors le résultat sera le dernier jour du mois calculé. Ce qui explique la différence avec l’expression ‘exp1 + exp2 month’.

CHAR(exp, type)
La fonction CHAR permet d’afficher une date exp ou une heure exp sous différents formats.
Type = ISO  ssaa-mm-jj et hh.mm.ss
Type = USA  mm/jj/ssaa et hh.mm AM (PM)
Type = EUR  jj.mm.ssaa et hh.mm.ss
Type = JIS  ssaa-mm-jj et hh:mm:ss
Exp doit être de format DATE ou TIME.

DATE(exp)
Renvoie la date dérivée de exp.
Si exp est de format TIMESTAMP, le résultat est la date de ce timestamp.
Si exp est de format DATE, le résultat est cette date.
Si exp est un nombre, le résultat est la date correspondant au 01/01/0001 plus le nombre de jours indiqué.

DAY(exp)
Renvoie le jour dérivé de exp.
Exp doit être TIMESTAMP ou DATE.

DAYOFMONTH(exp)
Renvoie le jour dérivé de exp.
Exp doit être TIMESTAMP ou DATE.
Fonction identique à la fonction DAY.

DAYOFWEEK(exp)
Renvoie le jour de la semaine (1 à 7) dérivé de exp.
Le jour n° 1 est le dimanche.
Exp doit être TIMESTAMP ou DATE.

DAYOFWEEK_ISO(exp)
Renvoie le jour de la semaine (1 à 7) dérivé de exp.
Le jour n° 1 est le lundi.
Exp doit être TIMESTAMP ou DATE.
Equivalent à la fonction DAYOFWEEK mais avec un premier jour de semaine le lundi et non le dimanche.

DAYOFYEAR(exp)
Renvoie le jour de l’année (1 à 366), soit le quantième dérivé de exp.
Exp doit être TIMESTAMP ou DATE.

DAYS(exp)
Renvoie le nombre de jours écoulés entre la date spécifiée (exp) et le 01/01/0001.
Exp doit être TIMESTAMP ou DATE.

HOUR(exp)
Renvoie l’heure dérivée de exp.
Exp doit être TIMESTAMP ou TIME.

JULIAN_DAY(exp)
Renvoie le nombre de jours écoulés entre la date spécifiée (exp) et le début du calendrier julien (01 janvier 4713 avant JC).
Exp doit être TIMESTAMP ou DATE.

LAST_DAY(exp)
Renvoie le dernier jour du mois correspondant à la date précisée.
Exp doit être DATE ou TIMESTAMP

MICROSECOND(exp)
Renvoie les microsecondes dérivées de exp.
Exp doit être TIMESTAMP ou TIME.

MIDNIGHT_SECONDS(exp)
Renvoie le nombre de secondes écoulées entre minuit et l’heure spécifiée (exp).
Exp doit être TIMESTAMP ou TIME.

MINUTE(exp)
Renvoie les minutes dérivées de exp.
Exp doit être TIMESTAMP ou TIME.

MONTH(exp)
Renvoie le mois dérivé de exp.
Exp doit être TIMESTAMP ou DATE.

NEXT_DAY(exp1, exp2)
Renvoie, en format TIMESTAMP, le prochain jour de la semaine précisé par exp2 en partant de la date précisée dans exp1.
Exp1 doit être DATE ou TIMESTAMP.
Exp2 peut prendre les valeurs ‘Monday’, ‘Tuesday’, ‘Wednesday’, ‘Thursday’, ‘Friday’, ‘Saturday’ ou ‘Sunday’. Ou en abrégé, ‘MON’, ‘TUE’, ‘WED’, ‘THU’, ‘FRI’, ‘SAT’ ou ‘SUN’.

QUARTER(exp)
Renvoie le numéro du trimestre (1 à 4) dérivé de exp.
Exp doit être TIMESTAMP ou DATE.

ROUND_TIMESTAMP(exp1, exp2)
Renvoie le timestamp précisé dans exp1, arrondi en fonction de la valeur de exp2.
Exp1 doit être TIMESTAMP.
Exp2 peut prendre de nombreuses valeurs différentes qui permettent d’arrondir au siècle, à l’année, au trimestre, au mois, au jour, à l’heure, à la minute ou à la seconde.

SECOND(exp)
Renvoie les secondes dérivées de exp.
Exp doit être TIMESTAMP ou TIME.

TIME(exp)
Renvoie l’heure dérivée de exp.
Exp doit être TIMESTAMP ou TIME.

TIMESTAMP(exp1, exp2)
Si exp2 est non spécifiée, exp1 doit être TIMESTAMP et le résultat de la fonction est le même timestamp.
Si exp2 est spécifiée, exp1 doit être DATE, exp2 doit être TIME et le résultat de la fonction est de transformer une date plus une heure en un timestamp, les microsecondes étant initialisées à 0.

TIMESTAMP_FORMAT(exp1, exp2) ou TO_DATE (exp1, exp2)
Renvoie un timestamp à partir de exp1 en précisant le format de exp1 grâce à exp2.

TRUNC_TIMESTAMP(exp1, exp2)
Renvoie le timestamp précisé dans exp1, tronqué en fonction de la valeur de exp2.
Exp1 doit être TIMESTAMP.
Exp2 peut prendre de nombreuses valeurs différentes qui permettent de tronquer au siècle, à l’année, au trimestre, au mois, au jour, à l’heure, à la minute ou à la seconde.

VARCHAR_FORMAT(exp1, exp2) ou TO_CHAR (exp1, exp2)
Renvoie un timestamp à partir de exp1 en précisant le format de renvoi grâce à exp2.
Exp1 doit être timestamp.

WEEK(exp)
Renvoie le numéro de semaine (1 à 54) dérivé de exp.
La semaine commence le dimanche.
Exp doit être TIMESTAMP ou DATE.

WEEK_ISO(exp)
Renvoie le numéro de semaine (1 à 53) dérivé de exp.
La semaine commence le lundi, la première semaine de l’année étant la première qui contient un jeudi.
Exp doit être TIMESTAMP ou DATE.
Equivalent à la fonction WEEK mais avec un premier jour de semaine le lundi et non le dimanche.

YEAR(exp)
Renvoie l’année dérivée de exp.
Exp doit être TIMESTAMP ou DATE.
pdz74 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/03/2011, 16h35   #3
Nouveau Membre du Club
 
Inscription : avril 2006
Messages : 276
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 276
Points : 29
Points : 29
merci bcp pour tes réponses

en fait j'ai une date sous format yyyy-mm-dd et je la voudrais en yyyymm
avec d'autres bd, dateformat le permet mais je ne connais pas du tout db2 et j'ai remarqué que cela ne fonctionnait pas avec.

j'ai essayé timestamp_format(date_du_jour,'YYYYMM') mais j'ai la même erreur
je ne comprends pas
nawal59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/03/2011, 17h00   #4
Membre Expert
 
Patrick
Inscription : mai 2008
Messages : 821
Détails du profil
Informations personnelles :
Nom : Patrick
Âge : 42
Localisation : France, Hérault (Languedoc Roussillon)

Informations forums :
Inscription : mai 2008
Messages : 821
Points : 1 041
Points : 1 041
Quelle plate-forme ?
Quelle version ?

Essaye ceci :

Code :
SELECT VARCHAR_FORMAT(current timestamp, 'YYYYMM')....
K2R400 est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 14/03/2011, 17h04   #5
Nouveau Membre du Club
 
Inscription : avril 2006
Messages : 276
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 276
Points : 29
Points : 29
c'est DB2 V8
nawal59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/03/2011, 00h10   #6
Membre chevronné
 
Avatar de Peut-êtreUneRéponse
 
Homme Guillaume VENTRE
z/OS Technical Leader
Inscription : décembre 2006
Messages : 514
Détails du profil
Informations personnelles :
Nom : Homme Guillaume VENTRE
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : z/OS Technical Leader
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2006
Messages : 514
Points : 617
Points : 617
VARCHAR_FORMAT est apparue en v6, la réponse de K2R400 doit répondre à ton besoin.

.
__________________
★★ Documentation Mainframe par Guillaume Ventre ★★
Peut-êtreUneRéponse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/03/2011, 09h12   #7
Nouveau Membre du Club
 
Inscription : avril 2006
Messages : 276
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 276
Points : 29
Points : 29
Merci! ça marche!!
nawal59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h02.


 
 
 
 
Partenaires

Hébergement Web