
Table::getSchema 메서드는 테이블의 컬럼 이름을 가져올 때, 컬럼 이름의 순서를 다음과 같이 결정합니다.
1. 컬럼 이름이 중복되지 않은 경우, 컬럼이 추가된 순서대로 가져옵니다. 예를 들어, 위의 예시에서 id, name, age 컬럼은 순서대로 가져옵니다.
2. 컬럼 이름이 중복되는 경우, 컬럼이 추가된 순서대로 가져옵니다. 위의 예시에서 두 번째 name 컬럼은 첫 번째 name 컬럼 다음에 가져옵니다.
Table::getSchema 메서드의 내부 로직은 다음과 같습니다.
- 테이블의 컬럼 목록을 가져옵니다.
- 컬럼 목록을 순회하며, 컬럼 이름을 확인합니다.
- 컬럼 이름이 중복되지 않은 경우, 컬럼 이름을 가져옵니다.
- 컬럼 이름이 중복되는 경우, 컬럼 이름을 가져오기 전에, 이전에 가져온 컬럼 이름을 확인하여 중복되지 않도록 합니다.
예를 들어, 위의 예시에서 Table::getSchema 메서드를 사용하여 컬럼 이름을 가져올 때, 다음과 같이 컬럼 이름이 가져옵니다.
- id
- name
- age
- name
컬럼 이름이 중복되는 경우, 컬럼 이름이 추가된 순서대로 가져오므로, 두 번째 name 컬럼은 첫 번째 name 컬럼 다음에 가져옵니다.
2025-07-14 02:54