ABAP에서 SORT 문은 내부 테이블의 데이터를 정렬하는 데 사용됩니다. 정렬은 하나 이상의 컬럼에 대해 수행할 수 있으며, 오름차순(ASCENDING)이 기본값이지만 내림차순(DESCENDING)으로도 설정할 수 있습니다. 여기서는 직원 데이터를 포함하는 내부 테이블을 정렬하는 예제를 제공하겠습니다.
먼저 직원 정보를 저장할 구조와 테이블 유형을 정의합니다.
TYPES: BEGIN OF ty_employee,
name TYPE string, " 직원 이름
age TYPE i, " 나이
dept TYPE string, " 부서
END OF ty_employee.
TYPES tt_employees TYPE STANDARD TABLE OF ty_employee WITH DEFAULT KEY.
다음으로, 몇 명의 직원 데이터를 이 테이블에 입력하고 정렬합니다.
DATA: lt_employees TYPE tt_employees.
" 직원 데이터 추가
lt_employees = VALUE #(
( name = '홍길동' age = 30 dept = '개발' )
( name = '김영희' age = 25 dept = '인사' )
( name = '이철수' age = 28 dept = '마케팅' )
( name = '박수미' age = 26 dept = '개발' )
).
" 나이순으로 오름차순 정렬
SORT lt_employees BY age ASCENDING.
" 정렬 결과 출력
LOOP AT lt_employees INTO DATA(lv_employee).
WRITE: / lv_employee-name, lv_employee-age, lv_employee-dept.
ENDLOOP.
이 코드는 lt_employees 내부 테이블의 모든 항목을 'age' 필드 기준으로 오름차순으로 정렬합니다. 그런 다음, LOOP AT 문을 사용하여 정렬된 결과를 출력합니다.
ABAP의 SORT를 사용하면 특정 기준에 따라 데이터를 쉽게 정렬할 수 있으며, 이를 통해 데이터 처리를 보다 효율적으로 할 수 있습니다. 이 예제에서는 가장 간단한 형태의 SORT를 보여주었지만, 다중 컬럼 정렬이나 내림차순 정렬 등 더 복잡한 정렬 조건을 설정할 수도 있습니다.