'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