Et oui, to_date utilise deux arguments de type chaîne. Ici vous n'utilisez qu'un seul argument, le second est déterminé d'après les critères NLS de votre session / database, mais c'est une pratique à proscrire.
Deux solutions s'offrent à vous.
1) Convertir votre nombre en chaîne et utilisez le format adéquat :
WHERE to_date('01/01/' || to_char(ANNEE), 'dd/mm/yyyy') <= inDAT_ARCHIVE;
2) Utilisez la fonction extract, qui renvoie un nombre :
WHERE ANNEE <= extract(year from inDAT_ARCHIVE);
Cette seconde solution sera certainement la plus véloce.
Partager