0

我正在尝试在控制文件的 when 子句中使用 OR 条件,这是我在控制文件中的代码:

load data
INFILE 'router.txt'
INTO TABLE ROUTER_ATTLAS_TABLENAME  
APPEND
**WHEN ((1) = 'J' or  (1) = 'D2'  or  (1) = 'vJ' or  (1) = 'VJ' )**
FIELDS TERMINATED BY '\|'

我收到一个错误:SQL*Loader-350: 第 5 行的语法错误。

Expecting ")", found "or".
WHEN ((1) = 'J' or  (1) = 'D2'  or  (1) = 'vJ' or  (1) = 'VJ' )

请建议我一个正确的语法。

4

2 回答 2

0

您只需要在同一个表中使用两个“插入”命令。复制...

INTO TABLE ROUTER_ATTLAS_TABLENAME
APPEND WHEN ((1) = 'J' or (1) = 'D2' or (1) = 'vJ' or (1) = 'VJ' ) FIELDS TERMINATED by '\|'

对每个所需的时间使用不同的时间。

于 2018-11-09T15:41:29.723 回答
0

恐怕在 WHEN 子句中不允许使用 OR:https ://docs.oracle.com/cd/B28359_01/server.111/b28319/ldr_control_file.htm#i1005657

于 2016-10-12T14:54:10.293 回答