UINT Collating Sequence
UINT Collating Sequence
UINT collating sequence는 부호 없는 정수를 포함한 텍스트를 숫자 순서로 비교하는 새 collating sequence를 구현하는, SQLite의 로드 가능 확장이에요. 이 문서는 UINT의 개요와 사용 예시를 설명해요.
출처: 문서
본문
1. 개요
UINT collating sequence는 부호 없는 정수를 포함한 텍스트를 숫자 순서로 비교하는 새 collating sequence를 구현하는, SQLite의 로드 가능 확장이에요.
UINT collating sequence는 SQLite의 표준 일부가 아니에요. 별도의 확장으로 로드되어야 해요. UINT의 소스 코드는 SQLite 소스 트리의 ext/misc/ 폴더에 있는 uint.c 소스 파일에 있어요.
UINT collating sequence는 SQLite 라이브러리의 표준 빌드에는 포함되지 않지만, CLI에서는 기본적으로 로드돼요. 이것은 표준 SQLite 라이브러리에서 사용할 수 있는 것 이상으로 다양한 확장을 로드하는 CLI의 일반적인 특징이에요.
UINT collating sequence는 텍스트의 기본 BINARY collating sequence와 거의 동일하게 작동하지만, 내장된 숫자 문자열이 숫자 순서로 비교된다는 점이 달라요.
-
앞의 0은 적절히 처리돼요. 내장된 숫자 문자열의 크기(magnitude) 비교를 망치지 않는다는 의미예요. "x00123y"는 "x123y"와 같아요.
-
부호 없는 정수만 인식돼요. 더하기와 빼기 부호는 무시돼요. 소수점과 지수 표기법은 무시돼요.
-
내장된 정수는 임의의 길이일 수 있어요. 비교는 64비트 기계 정수로 표현할 수 있는 정수로 제한되지 않아요.
2. 예시
| COLLATE binary | COLLATE uint |
|---|---|
| '0000123457' '123456' 'abc0000000010xyz' 'abc0010xyy' 'abc10xzz' 'abc674xyz' 'abc87xyz' 'abc9xyz' |
'123456' '0000123457' 'abc9xyz' 'abc0010xyy' 'abc0000000010xyz' 'abc10xzz' 'abc87xyz' 'abc674xyz' |
더 알아보기 (Learn more)
- Collating Sequences — collating sequence 개념
- Loadable Extensions — 로드 가능 확장
- Appropriate Uses Of SQLite — 확장 — 확장 작성 가이드