我想往一个表中导数据,基本情况如下.data.txt文件里有一条数据,如下(中间用','号相隔):
1111,2233,4444,5555,6666表的结构如下:
tablename(f1 varchar2,f2 varchar2,f3 varchar2,f4 varchar2,f5 varchar2,f6 varchar2)要求导入数据库后表中的值如下:
f1 1111
f2 2233
f3 4444
f4 2233
f5 5555
f6 6666我现在的难点在于字段f2和f4都要取第二个数据2233,
在此先谢谢了(最好不用position,因为数据的长度是不定的).
1111,2233,4444,5555,6666表的结构如下:
tablename(f1 varchar2,f2 varchar2,f3 varchar2,f4 varchar2,f5 varchar2,f6 varchar2)要求导入数据库后表中的值如下:
f1 1111
f2 2233
f3 4444
f4 2233
f5 5555
f6 6666我现在的难点在于字段f2和f4都要取第二个数据2233,
在此先谢谢了(最好不用position,因为数据的长度是不定的).
LOAD DATA
INFILE 'data.txt'
APPEND
INTO TABLE tablename
FIELDS TERMINATED BY "," OPTIONALLY ENCLOSED BY '"'
TRAILING NULLCOLS
(
"F1",
"F2",
"F3",
"F5",
"F6"
)2、利用update语句更新f4的数据为f2对应的数据
UPDATE tablename
SET f4=f2;
(
f1,
f2,
f3,
f5,
f6,
f4 ":f2"
)
INFILE 'data.txt'
APPEND
INTO TABLE tablename
FIELDS TERMINATED BY "," OPTIONALLY ENCLOSED BY '"'
TRAILING NULLCOLS
(
"F1",
"F2",
"F3",
"F5",
"F6",
"F4"":F2"
)
TRAILING NULLCOLS
(
f1,
f2,
f3,
f4 ":f2",
f5,
f6
)就是想通过指定某个关健字,让f5,f6得到的数据分别为5555,6666,可实际上为:6666,null