- SQLite DB에서 JavaScript로 사용자 정의 함수, 집계, 윈도우 함수, 정렬 방식(collation)등을 구현할 수 있는 확장 도구
- SQL로 표현하기 어려운 로직도 JavaScript 코드로 직접 등록·실행할 수 있음
- 기존 SQL의 한계를 넘어, 텍스트 가공·수식 연산·통계·특수 집계·자연스러운 정렬 등을 JavaScript로 간단히 구현해 다양한 데이터 처리 시나리오에 활용 가능
- 확장 모듈 로딩만으로 바로 사용 가능하며, js_eval로 쿼리 내에서 JavaScript 코드 직접 실행, 사용자 정의 함수 동기화로 분산 클러스터 환경에서도 동일하게 동작
-
함수·집계·윈도우·정렬 로직을 SQL에서 동적으로 생성/수정할 수 있어, 복잡한 비즈니스 로직, 데이터 분석, 통계 처리에 매우 효과적
-
타임존·로케일·커스텀 정렬, 고급 통계, 실시간 분석 등 기존 SQLite로는 불가능한 고급 처리를 JavaScript 생태계를 통해 실현 가능
주요 함수들
-
Scalar Functions: 각 행마다 하나의 결과를 반환, 데이터 가공/계산에 활용 (예: 생일로 나이 계산, 이메일 도메인 추출)
-
Aggregate Functions: 여러 행을 처리해 하나의 값을 반환 (예: 표준편차, 중앙값 등 커스텀 집계)
-
Window Functions: 데이터 집합 전체에 접근 가능, 슬라이딩·누적 통계, 이동 평균 등 복잡한 윈도우 연산 지원
-
Collation Sequences: JavaScript로 커스텀 정렬 알고리듬 구현, 로캘/자연어/대소문자 구분 없는 정렬 등 가능
-
JavaScript Evaluation: SQL 쿼리 내에서 JavaScript 코드 즉시 실행, 임의 연산·데이터 변환 등 활용
-
분산 환경 동기화: sqlite-sync와 연동하면 생성한 JS 함수가 클러스터/오프라인 환경 모두 자동 동기화