SAP BASIC
[09] ABAP SQL - 동일 필드에 대해 Where 조건 두 번 주기!
0v0_삐약
2024. 8. 21. 22:45
728x90
데이터를 추출할 때 동일 필드에 대해서 조건이 여러가지일 때 .
하나의 SELECT문 안에서 해당 필드에 대한 Where 조건을 여러 번 사용할 수 있다!
말로 설명하려니 굉장히 이상한데
간단하다!
예를 들어
SFIGHT의 데이터를 추출하는데
CARRID는 AA, AZ, DL, JL 중에 있어야 하며, Selection Screen에서 사용자가 입력한 CARRID와 일치해야 한다.
TABLES : sflight.
SELECT-OPTIONS : s_carrid FOR sflight-carrid.
DATA lt_r_carrid TYPE RANGE OF sflight-carrid.
lt_r_carrid = VALUE #( sign = 'I' option = 'EQ'
( low = 'AA' )
( low = 'AZ' )
( low = 'DL' )
( low = 'JL' ) ).
SELECT *
FROM sflight
WHERE carrid IN @lt_r_carrid
AND carrid IN @s_carrid
INTO TABLE @DATA(lt_tab).
위와 같이 Select 문의 Where 절에 Carrid IN @lt_r_Carrid / Carrid In @s_carrid 두 조건이 작성됨
사용자가 S_CARRID에 AA~AC를 입력하면
결과는
lt_r_carrid에 있는 AA, AZ, DL, JL
s_carrid에 있는 AA, AB, AC
중 두 조건을 충족하는 'AA' 에 대해서만 데이터가 출력된다
728x90