'How to use the OR condition in when clause of SQL Loader control file
I am trying to use the OR condition in when clause in control file, This this my code in control file :
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 '\|'
I am getting a error :SQL*Loader-350: Syntax error at line 5.
Expecting ")", found "or".
WHEN ((1) = 'J' or (1) = 'D2' or (1) = 'vJ' or (1) = 'VJ' )
Please suggest me an correct syntax.
Solution 1:[1]
I'm afraid OR is not allowed in a WHEN clause: https://docs.oracle.com/cd/B28359_01/server.111/b28319/ldr_control_file.htm#i1005657
Solution 2:[2]
You just need two "insert" command in the same table. Copy...
INTO TABLE ROUTER_ATTLAS_TABLENAME
APPEND
WHEN ((1) = 'J' or (1) = 'D2' or (1) = 'vJ' or (1) = 'VJ' )
FIELDS TERMINATED BY '\|'
using different WHEN to each desired one.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Gary_W |
| Solution 2 | Sandro |
