Bonjour,

Je reçois un fichier .csv dans lequel j'ai une info en chaine de caractère de ce style : ABC0004507.

Et j'aimerais pouvoir formater mon champ pour avoir les trois premiers caractères en VARCHAR2 et les 7 derniers en NUMBER (afin d'enlever les 0 devant).

En gros ça donnerais ça en SQL

Code : Sélectionner tout - Visualiser dans une fenêtre à part
SELECT 'ABC0004507' AS DONNEE_RECUE, SUBSTR('ABC0004507', 1, 3) || TO_NUMBER(SUBSTR('ABC0004507', 4, 7)) AS RESULTAT_VOULU FROM DUAL
Et je ne sais pas du tout comment procéder pour faire ce format.

Voici le début de mon SQL Loader :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
LOAD DATA
INFILE 'fichier.csv'
BADFILE 'fichier.bad'
DISCARDFILE 'export.dsc'
APPEND INTO TABLE MA_TABLE
FIELDS TERMINATED BY ";" OPTIONALLY ENCLOSED BY '\"' TRAILING NULLCOLS
(DATE_INTEG Date "YYYYMMDD",
TYPNUM)
Ce serait le champ TYPNUM que j'aimerais formater.

Avez-vous une petite idée ?