使用mySQL导入固定宽度文件
我最近开始使用SQL,我有一个固定宽度的文本文件,其内容如下:使用mySQL导入固定宽度文件,mysql,sql,Mysql,Sql,我最近开始使用SQL,我有一个固定宽度的文本文件,其内容如下: 122000093738930 Q2334GH467829749 567892390DFG2333 ... ... ... 我想将它们导入MySQL数据库,并使用FWF文件中的每个条目创建列。假设这些列看起来像: C1 C2 C3 12200 0093738 8930 Q2334 GH46782 9749 有谁能帮我实现这一点吗?首先创建一个表名all_data,其中包含一列数据,例如data”,并将上述数据
122000093738930
Q2334GH467829749
567892390DFG2333
...
...
...
我想将它们导入MySQL数据库,并使用FWF文件中的每个条目创建列。假设这些列看起来像:
C1 C2 C3
12200 0093738 8930
Q2334 GH46782 9749
有谁能帮我实现这一点吗?首先创建一个表名
all_data
,其中包含一列数据,例如data”,并将上述数据加载到此表中。之后,创建一个新的表名
data\u split,包含3列,例如
a,
b,
c`。然后将数据加载到如下表中
insert into data_split(a,b,c) select substr(data,1,5),substr(data,6,8),substr(data,12,4) from data;
每一列的长度都是固定的吗?你能检查一下我发布的答案并告诉我这是否正确吗?
LOAD DATA INFILE '/path/'
INTO TABLE abc
(@row)
SET C1= TRIM(SUBSTR(@row,1,5)),
c2= TRIM(SUBSTR(@row,6,12)),
C3= TRIM(SUBSTR(@row,13,16))
;