使用第一列固定宽度加载SQL infile

时间:2016-02-10 09:34:01

标签: mysql sql

我有一个包含以下数据的纯文本文件:

B01-CA  This is first data
Z01     This is second data 
A56-COL This is third data

所以我想在一个包含3列id,code,name。

的表中插入这些数据

我知道语法:

load data local infile 'C:/codes.txt'
into table tbl_test
fields 
terminated by ' '
enclosed by ' '
lines 
terminated by '\n'
(code,name);

但是如何在代码列中将第一个子字符串最多带到8个字符串,并在名称列中休息直到'\ n'。 id 是自动递增。任何想法都会有所帮助。

1 个答案:

答案 0 :(得分:0)

我有同样的问题。 我这样做了:

load data local infile '<file>' into table <table_name> (@row) set code = trim(substr(@row, 0,7)), name = trim(substr(@row, 8))

它对我有用