使用SQL加载器时,如何跳过前两列?
我得到了一个.csv文件,其中有18列无用数据,然后是10列有用数据,然后是另一列无用数据。是否只需要抓取10列有用的数据,然后跳过其余的?我只想从第19列开始读取文件,在第29列结束。您必须使用使用SQL加载器时,如何跳过前两列?,sql,sql-loader,Sql,Sql Loader,我得到了一个.csv文件,其中有18列无用数据,然后是10列有用数据,然后是另一列无用数据。是否只需要抓取10列有用的数据,然后跳过其余的?我只想从第19列开始读取文件,在第29列结束。您必须使用填充程序: LOAD DATA INFILE file.csv INTO TABLE test_sqlldr APPEND FIELDS TERMINATED BY ';' TRAILING NULLCOLS ( col1 filler, col2 filler, ... col18
填充程序:
LOAD DATA
INFILE file.csv
INTO TABLE test_sqlldr
APPEND
FIELDS TERMINATED BY ';'
TRAILING NULLCOLS
(
col1 filler,
col2 filler,
...
col18 filler,
col19,
col20,
...
col29
)
你可以找到更多的信息 您必须使用填充物:
LOAD DATA
INFILE file.csv
INTO TABLE test_sqlldr
APPEND
FIELDS TERMINATED BY ';'
TRAILING NULLCOLS
(
col1 filler,
col2 filler,
...
col18 filler,
col19,
col20,
...
col29
)
你可以找到更多的信息 对于MySQL,它将是:
LOAD DATA
INFILE file.csv
INTO TABLE test_sqlldr
APPEND
FIELDS TERMINATED BY ';'
TRAILING NULLCOLS
(
@ignore,
@ignore,
...
@ignore,
col19,
col20,
...
col29
)
而MySQL将是:
LOAD DATA
INFILE file.csv
INTO TABLE test_sqlldr
APPEND
FIELDS TERMINATED BY ';'
TRAILING NULLCOLS
(
@ignore,
@ignore,
...
@ignore,
col19,
col20,
...
col29
)
我以前从未使用过filler,但我认为它只是将NULL而不是数据放入输入表中。对吗?所以我需要输入表上的18列,我只需要用null填充。这将是我的退路,但我希望根本不需要将这18列放在我的输入表中。所以我会跳过1-18,然后第1-10列将填充19-29。这可能吗?只是在我的输入表中添加了额外的列并使用了filler。我以前从未使用过filler,但我认为它只是在输入表中输入了NULL而不是数据。对吗?所以我需要输入表上的18列,我只需要用null填充。这将是我的退路,但我希望根本不需要将这18列放在我的输入表中。所以我会跳过1-18,然后第1-10列将填充19-29。这可能吗?只是在我的输入表中添加了额外的列并使用了填充符。