✅ ABAP SORT 문 – 내부 테이블 정렬하기


1️⃣ 기본 문법

SORT itab01.
  • 내부 테이블 itab01을 오름차순(ascending) 으로 정렬함.
  • 기본 키(primary key) 기준으로 정렬됨.b
  • 추가 조건이 없는 경우는 기본 정렬 방식으로 작동함.

2️⃣ BY 절을 사용한 정렬

SORT itab01 BY surname.
  • surname 필드 기준으로 정렬함.
  • 여러 필드로 정렬하고 싶으면 공백으로 필드명만 나열하면 됨.
 
SORT itab01 BY surname forename.

❌ 쉼표(,) 쓰지 않음!


3️⃣ 언어 특성을 반영한 정렬: AS TEXT

SAP 시스템은 전 세계 언어를 다루기 때문에 정렬 시 언어 특성을 고려할 수도 있어.

SORT itab01 AS TEXT BY surname forename.
  • 언어 기준 정렬 적용됨 (예: 독일어 ß, ä 같은 특수문자).
  • AS TEXT는 모든 필드에 적용됨.

특정 필드에만 AS TEXT 적용하고 싶다면?

SORT itab01 BY surname forename AS TEXT.
 
  • forename 필드에만 텍스트 정렬 적용됨.

4️⃣ 정렬 방향 지정 – ASCENDING, DESCENDING

SORT itab01 BY surname DESCENDING.
  • surname 필드를 기준으로 내림차순 정렬함.
SORT itab01 BY surname ASCENDING.
  • 오름차순은 기본값이므로 생략 가능하지만 명시할 수도 있다.

5️⃣ SORT 가능한 테이블 종류


테이블 종류사용가능여부 설명
Standard Table ✅ 가능 꼭 BY절을 사용해야 함
Sorted Table ✅ 가능 기본 키 기준으로 자동 정렬됨
Hashed Table ❌ 불가능 정렬 개념 자체가 없음 (인덱스도 없음)

🔍 정리 요약


기본 정렬 SORT itab.
특정 필드 기준 정렬 SORT itab BY surname.
다중 필드 기준 정렬 SORT itab BY surname forename.
내림차순 정렬 SORT itab BY surname DESCENDING.
언어 정렬 전체 적용 SORT itab AS TEXT BY surname forename.
언어 정렬 필드만 적용 SORT itab BY surname forename AS TEXT.

sort한 결과물

 

+ Recent posts