Bonjour à tous!
Une petite question concernant une petite bricole à faire en SQL.
J'ai un VARCHAR(8) correspondant à une date AAAAMMJJ provenant d'un fichier CSV un peu crade que je voudrais éclater en trois champs pour pouvoir bosser tranquillement (non mais ho).
Donc ma question est : comment renvoyer n caractères arbitraires de mon VARCHAR pour les réinserer à la volée voire les convertir en DATE.
# http://dev.mysql.com
Posté par Jay . Évalué à 1.
Tu peux aussi utiliser CONCAT() pour reconstituer une date au format ISO avant d'insérer ça dans un champs de type DATE.
Bonne continuation :-)
# insertion direct
Posté par Jean-Yves Beaujean (site web personnel) . Évalué à 3.
create table test ( madate DATE ) ;
Ensuite tu peux charger le fichier :LOAD DATA INFILE 'tonfichier.csv' INTO TABLE test LINES TERMINATED BY ';'
Si tes lignes se terminent par un retour chariot, tu mets LINES TERMINATED BY '\n' ( ça tu adaptes...) Cette technique fonctionne aussi si ton fichier CSV possède plusieurs champs. Dans ce cas, tu dois ajouter FIELDS TERMINATED BY.# merci
Posté par David FRANCOIS (site web personnel) . Évalué à 0.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.