2

我正在使用 oracle 11g 中的 sqlldr(sql loader)。我正在尝试将 3 个字段连接成一个字段。有人做过吗?

例如:TABLE - “CELLINFO”,其中的字段是(mobile_no、service、longitude)。

给出的数据是 (+9198449844,idea,110,25,50) 即 (mobile_no,service,grad,min,sec)。

但是在将数据加载到表中时,我需要将最后 3 个字段(grad、min、sec)连接到表的经度字段中。

在这里我无法手动编辑,因为我要加载 1000 条数据。

我也尝试过使用 ||,+ 和 concat().... 但我做不到。

4

1 回答 1

6

ctl 可能是:

load data
append
into table      cellinfo
fields terminated by ","
(
mobile_no,
service,
grad BOUNDFILLER,
min BOUNDFILLER,
sec BOUNDFILLER,
latitude ":grad || :min|| :sec"
)

假设 cellinfo(mobile_no, service, latitude)。

orafaq 上有一些不错的信息

或者,您可以修改输入:

awk -F"," '{print $1","$2","$3":"$4":"$5}' inputfile > outputfile
于 2012-07-12T13:24:15.917 回答