반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- MVC
- memory변수명 변경
- optional
- sap memory
- Testcode
- spring MVC
- for all entries in
- application-properties
- controller
- 구글 보안 api 활용
- Validation
- new syntax
- @Controller
- jpa
- abap
- mapping corresponding
- n+1
- SpringMVC
- 김영한
- value base corresponding
- BindingResult
- springSecurityFilterChain 오류
- memory 정리
- SAP
- 신문법 abap
- abap memory
- spring
- abap value in field Data Class error
- abap면접
- .orelseThrow
Archives
- Today
- Total
SAP공장
[ABAP] For all entries in 본문
반응형
Q. For all Entries in 이란?
=> FOR ALL ENTRIES IN은 내부 테이블의 값을 기반으로 SELECT문을 실행할 때 사용하는 SQL 구문.
즉, 여러 조건을 한 번에 처리하기 위한 일종의 대량 조건 처리 방식
[주의 사항]
1. 내부 테이블이 비어 있으면, 전체 데이터를 가져온다
=> itab initial check를 진행한다.
<해결 방법>
IF itab IS NOT INITIAL.
SELECT ... FROM dbtab INTO TABLE result
FOR ALL ENTRIES IN itab
WHERE ... .
ENDIF.
2. 중복 제거 (DISTINCT 사용 불가, 내부적으로 중복제거)
=>Select 시 기준이 되는 필드를 명시하자
<해결 방법>
select a~connid,
a~carrid
from sbook as a
FOR ALL ENTRIES IN @lt_sflight
where a~connid = @lt_sflight-connid
into TABLE @DATA(lt_test).
3. where절의 조건은 정확히 일치해야 한다.
=> WHERE 절과 itab의 필드와 정확히 일치
<해결 방법>
SELECT * FROM mara INTO TABLE lt_mara
FOR ALL ENTRIES IN lt_matnr
WHERE matnr = lt_matnr-matnr.
4. 필드 타입 제한
=> LIKE, BETWEEN, IN과 같은 비교 연산자는 사용 불가
=> Select 내 CASE 문도 사용 불가
5. 대용량 테이블 주의
=> 내부 테이블의 크기가 클수록 쿼리 성능이 저하
반응형
'[SAP]ABAP > ABAP 기술 면접' 카테고리의 다른 글
[ABAP] SAP Memory VS ABAP Memory (0) | 2025.07.16 |
---|---|
Function Module Exit (0) | 2023.07.03 |
[ABAP]Update, Modify 시 꼭 sy-subrc를 check (0) | 2022.11.16 |
Field-symbol (0) | 2022.11.07 |
ABAP PROCESS, RFC, MESSAGE , OPEN SQL(CRUD) 정리 (0) | 2022.11.07 |
Comments