@simplysm/orm-common 14.0.1 → 14.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +135 -0
- package/dist/exec/queryable.js +18 -18
- package/dist/exec/queryable.js.map +1 -1
- package/dist/expr/expr.d.ts +102 -102
- package/dist/expr/expr.js +105 -105
- package/dist/expr/expr.js.map +1 -1
- package/dist/query-builder/mssql/mssql-expr-renderer.d.ts +1 -1
- package/dist/query-builder/mssql/mssql-expr-renderer.d.ts.map +1 -1
- package/dist/query-builder/mssql/mssql-expr-renderer.js +17 -17
- package/dist/query-builder/mssql/mssql-expr-renderer.js.map +1 -1
- package/dist/query-builder/mssql/mssql-query-builder.d.ts +2 -2
- package/dist/query-builder/mssql/mssql-query-builder.d.ts.map +1 -1
- package/dist/query-builder/mssql/mssql-query-builder.js +26 -26
- package/dist/query-builder/mssql/mssql-query-builder.js.map +1 -1
- package/dist/query-builder/mysql/mysql-expr-renderer.d.ts +1 -1
- package/dist/query-builder/mysql/mysql-expr-renderer.d.ts.map +1 -1
- package/dist/query-builder/mysql/mysql-expr-renderer.js +14 -14
- package/dist/query-builder/mysql/mysql-expr-renderer.js.map +1 -1
- package/dist/query-builder/mysql/mysql-query-builder.d.ts +10 -10
- package/dist/query-builder/mysql/mysql-query-builder.d.ts.map +1 -1
- package/dist/query-builder/mysql/mysql-query-builder.js +67 -67
- package/dist/query-builder/mysql/mysql-query-builder.js.map +1 -1
- package/dist/query-builder/postgresql/postgresql-expr-renderer.d.ts +1 -1
- package/dist/query-builder/postgresql/postgresql-expr-renderer.d.ts.map +1 -1
- package/dist/query-builder/postgresql/postgresql-expr-renderer.js +13 -13
- package/dist/query-builder/postgresql/postgresql-expr-renderer.js.map +1 -1
- package/dist/query-builder/postgresql/postgresql-query-builder.d.ts +8 -8
- package/dist/query-builder/postgresql/postgresql-query-builder.d.ts.map +1 -1
- package/dist/query-builder/postgresql/postgresql-query-builder.js +47 -47
- package/dist/query-builder/postgresql/postgresql-query-builder.js.map +1 -1
- package/dist/schema/factory/relation-builder.d.ts +8 -8
- package/dist/schema/factory/relation-builder.js +9 -9
- package/dist/schema/factory/relation-builder.js.map +1 -1
- package/dist/schema/view-builder.js +2 -2
- package/dist/schema/view-builder.js.map +1 -1
- package/dist/types/column.d.ts +21 -21
- package/dist/types/column.js +5 -5
- package/dist/utils/result-parser.d.ts +11 -11
- package/dist/utils/result-parser.js +48 -48
- package/dist/utils/result-parser.js.map +1 -1
- package/docs/core.md +206 -0
- package/docs/expression.md +217 -0
- package/docs/query-builder.md +126 -0
- package/docs/queryable.md +236 -0
- package/docs/schema-builders.md +352 -0
- package/docs/types.md +501 -0
- package/package.json +7 -3
- package/src/exec/queryable.ts +18 -18
- package/src/expr/expr.ts +105 -105
- package/src/query-builder/mssql/mssql-expr-renderer.ts +17 -17
- package/src/query-builder/mssql/mssql-query-builder.ts +26 -26
- package/src/query-builder/mysql/mysql-expr-renderer.ts +14 -14
- package/src/query-builder/mysql/mysql-query-builder.ts +67 -67
- package/src/query-builder/postgresql/postgresql-expr-renderer.ts +13 -13
- package/src/query-builder/postgresql/postgresql-query-builder.ts +47 -47
- package/src/schema/factory/relation-builder.ts +9 -9
- package/src/schema/view-builder.ts +2 -2
- package/src/types/column.ts +23 -23
- package/src/utils/result-parser.ts +49 -49
package/dist/expr/expr.d.ts
CHANGED
|
@@ -48,13 +48,13 @@ export interface SwitchExprBuilder<TPrimitive extends ColumnPrimitive> {
|
|
|
48
48
|
*/
|
|
49
49
|
export declare const expr: {
|
|
50
50
|
/**
|
|
51
|
-
*
|
|
51
|
+
* 리터럴 값을 ExprUnit으로 래핑
|
|
52
52
|
*
|
|
53
|
-
*
|
|
53
|
+
* dataType에 맞는 기본 타입으로 확장, 리터럴 타입 제거
|
|
54
54
|
*
|
|
55
|
-
* @param dataType -
|
|
56
|
-
* @param value -
|
|
57
|
-
* @returns
|
|
55
|
+
* @param dataType - 값의 데이터 타입 ("string", "number", "boolean", "DateTime", "DateOnly", "Time", "Uuid", "Buffer")
|
|
56
|
+
* @param value - 래핑할 값 (undefined 허용)
|
|
57
|
+
* @returns 래핑된 ExprUnit 인스턴스
|
|
58
58
|
*
|
|
59
59
|
* @example
|
|
60
60
|
* ```typescript
|
|
@@ -73,13 +73,13 @@ export declare const expr: {
|
|
|
73
73
|
*/
|
|
74
74
|
val<TStr extends ColumnPrimitiveStr, T extends ColumnPrimitiveMap[TStr] | undefined>(dataType: TStr, value: T): ExprUnit<T extends undefined ? ColumnPrimitiveMap[TStr] | undefined : ColumnPrimitiveMap[TStr]>;
|
|
75
75
|
/**
|
|
76
|
-
*
|
|
76
|
+
* Column 참조 생성
|
|
77
77
|
*
|
|
78
|
-
*
|
|
78
|
+
* 일반적으로 Queryable 콜백 내부에서 프록시 객체를 사용
|
|
79
79
|
*
|
|
80
|
-
* @param dataType - Column
|
|
81
|
-
* @param path - Column
|
|
82
|
-
* @returns Column
|
|
80
|
+
* @param dataType - Column 데이터 타입
|
|
81
|
+
* @param path - Column 경로 (테이블 별칭, column 이름 등)
|
|
82
|
+
* @returns Column 참조 ExprUnit 인스턴스
|
|
83
83
|
*
|
|
84
84
|
* @example
|
|
85
85
|
* ```typescript
|
|
@@ -89,13 +89,13 @@ export declare const expr: {
|
|
|
89
89
|
*/
|
|
90
90
|
col<TStr extends ColumnPrimitiveStr>(dataType: ColumnPrimitiveStr, ...path: string[]): ExprUnit<ColumnPrimitiveMap[TStr] | undefined>;
|
|
91
91
|
/**
|
|
92
|
-
* Raw SQL expression
|
|
92
|
+
* Raw SQL expression 생성 (이스케이프 해치)
|
|
93
93
|
*
|
|
94
|
-
*
|
|
95
|
-
*
|
|
94
|
+
* ORM에서 지원하지 않는 DB 전용 함수나 구문을 직접 사용해야 할 때 사용.
|
|
95
|
+
* 태그드 템플릿 리터럴로 사용하며, 보간된 값은 자동으로 파라미터화됨
|
|
96
96
|
*
|
|
97
|
-
* @param dataType -
|
|
98
|
-
* @returns
|
|
97
|
+
* @param dataType - 반환 값의 데이터 타입
|
|
98
|
+
* @returns 태그드 템플릿 함수
|
|
99
99
|
*
|
|
100
100
|
* @example
|
|
101
101
|
* ```typescript
|
|
@@ -111,13 +111,13 @@ export declare const expr: {
|
|
|
111
111
|
*/
|
|
112
112
|
raw<T extends ColumnPrimitiveStr>(dataType: T): (strings: TemplateStringsArray, ...values: ExprInput<ColumnPrimitive>[]) => ExprUnit<ColumnPrimitiveMap[T] | undefined>;
|
|
113
113
|
/**
|
|
114
|
-
*
|
|
114
|
+
* 동등 비교 (NULL 안전)
|
|
115
115
|
*
|
|
116
|
-
*
|
|
116
|
+
* NULL 값도 안전하게 비교 (MySQL: `<=>`, MSSQL/PostgreSQL: `IS NULL OR =`)
|
|
117
117
|
*
|
|
118
|
-
* @param source -
|
|
119
|
-
* @param target -
|
|
120
|
-
* @returns WHERE
|
|
118
|
+
* @param source - 비교할 column 또는 expression
|
|
119
|
+
* @param target - 비교 대상 값 또는 expression
|
|
120
|
+
* @returns WHERE 조건 expression
|
|
121
121
|
*
|
|
122
122
|
* @example
|
|
123
123
|
* ```typescript
|
|
@@ -127,11 +127,11 @@ export declare const expr: {
|
|
|
127
127
|
*/
|
|
128
128
|
eq<T extends ColumnPrimitive>(source: ExprUnit<T>, target: ExprInput<T>): WhereExprUnit;
|
|
129
129
|
/**
|
|
130
|
-
*
|
|
130
|
+
* 초과 비교 (>)
|
|
131
131
|
*
|
|
132
|
-
* @param source -
|
|
133
|
-
* @param target -
|
|
134
|
-
* @returns WHERE
|
|
132
|
+
* @param source - 비교할 column 또는 expression
|
|
133
|
+
* @param target - 비교 대상 값 또는 expression
|
|
134
|
+
* @returns WHERE 조건 expression
|
|
135
135
|
*
|
|
136
136
|
* @example
|
|
137
137
|
* ```typescript
|
|
@@ -141,11 +141,11 @@ export declare const expr: {
|
|
|
141
141
|
*/
|
|
142
142
|
gt<T extends ColumnPrimitive>(source: ExprUnit<T>, target: ExprInput<T>): WhereExprUnit;
|
|
143
143
|
/**
|
|
144
|
-
*
|
|
144
|
+
* 미만 비교 (<)
|
|
145
145
|
*
|
|
146
|
-
* @param source -
|
|
147
|
-
* @param target -
|
|
148
|
-
* @returns WHERE
|
|
146
|
+
* @param source - 비교할 column 또는 expression
|
|
147
|
+
* @param target - 비교 대상 값 또는 expression
|
|
148
|
+
* @returns WHERE 조건 expression
|
|
149
149
|
*
|
|
150
150
|
* @example
|
|
151
151
|
* ```typescript
|
|
@@ -155,11 +155,11 @@ export declare const expr: {
|
|
|
155
155
|
*/
|
|
156
156
|
lt<T extends ColumnPrimitive>(source: ExprUnit<T>, target: ExprInput<T>): WhereExprUnit;
|
|
157
157
|
/**
|
|
158
|
-
*
|
|
158
|
+
* 이상 비교 (>=)
|
|
159
159
|
*
|
|
160
|
-
* @param source -
|
|
161
|
-
* @param target -
|
|
162
|
-
* @returns WHERE
|
|
160
|
+
* @param source - 비교할 column 또는 expression
|
|
161
|
+
* @param target - 비교 대상 값 또는 expression
|
|
162
|
+
* @returns WHERE 조건 expression
|
|
163
163
|
*
|
|
164
164
|
* @example
|
|
165
165
|
* ```typescript
|
|
@@ -169,11 +169,11 @@ export declare const expr: {
|
|
|
169
169
|
*/
|
|
170
170
|
gte<T extends ColumnPrimitive>(source: ExprUnit<T>, target: ExprInput<T>): WhereExprUnit;
|
|
171
171
|
/**
|
|
172
|
-
*
|
|
172
|
+
* 이하 비교 (<=)
|
|
173
173
|
*
|
|
174
|
-
* @param source -
|
|
175
|
-
* @param target -
|
|
176
|
-
* @returns WHERE
|
|
174
|
+
* @param source - 비교할 column 또는 expression
|
|
175
|
+
* @param target - 비교 대상 값 또는 expression
|
|
176
|
+
* @returns WHERE 조건 expression
|
|
177
177
|
*
|
|
178
178
|
* @example
|
|
179
179
|
* ```typescript
|
|
@@ -185,12 +185,12 @@ export declare const expr: {
|
|
|
185
185
|
/**
|
|
186
186
|
* range comparison (BETWEEN)
|
|
187
187
|
*
|
|
188
|
-
*
|
|
188
|
+
* from/to가 undefined이면 해당 방향은 제한 없음
|
|
189
189
|
*
|
|
190
|
-
* @param source -
|
|
191
|
-
* @param from -
|
|
192
|
-
* @param to -
|
|
193
|
-
* @returns WHERE
|
|
190
|
+
* @param source - 비교할 column 또는 expression
|
|
191
|
+
* @param from - 시작 값 (undefined이면 하한 없음)
|
|
192
|
+
* @param to - 끝 값 (undefined이면 상한 없음)
|
|
193
|
+
* @returns WHERE 조건 expression
|
|
194
194
|
*
|
|
195
195
|
* @example
|
|
196
196
|
* ```typescript
|
|
@@ -221,7 +221,7 @@ export declare const expr: {
|
|
|
221
221
|
* LIKE pattern matching
|
|
222
222
|
*
|
|
223
223
|
* `%` matches zero or more characters, `_` matches a single character.
|
|
224
|
-
*
|
|
224
|
+
* 특수 문자는 `\`로 이스케이프됨
|
|
225
225
|
*
|
|
226
226
|
* @param source - Column or expression to search
|
|
227
227
|
* @param pattern - Search pattern (%, _ wildcards available)
|
|
@@ -239,9 +239,9 @@ export declare const expr: {
|
|
|
239
239
|
*/
|
|
240
240
|
like(source: ExprUnit<string | undefined>, pattern: ExprInput<string | undefined>): WhereExprUnit;
|
|
241
241
|
/**
|
|
242
|
-
*
|
|
242
|
+
* 정규식 패턴 매칭
|
|
243
243
|
*
|
|
244
|
-
*
|
|
244
|
+
* 참고: 정규식 구문은 DBMS 구현에 따라 다를 수 있음
|
|
245
245
|
*
|
|
246
246
|
* @param source - Column or expression to search
|
|
247
247
|
* @param pattern - Regular expression pattern
|
|
@@ -271,7 +271,7 @@ export declare const expr: {
|
|
|
271
271
|
/**
|
|
272
272
|
* IN (SELECT ...) - Compare against subquery results
|
|
273
273
|
*
|
|
274
|
-
*
|
|
274
|
+
* 서브쿼리는 단일 column만 SELECT해야 함
|
|
275
275
|
*
|
|
276
276
|
* @param source - Column or expression to compare
|
|
277
277
|
* @param query - Queryable that returns a single column
|
|
@@ -295,7 +295,7 @@ export declare const expr: {
|
|
|
295
295
|
/**
|
|
296
296
|
* EXISTS (SELECT ...) - Check if subquery returns any rows
|
|
297
297
|
*
|
|
298
|
-
*
|
|
298
|
+
* 서브쿼리가 하나 이상의 행을 반환하면 true 반환
|
|
299
299
|
*
|
|
300
300
|
* @param query - Queryable to check for existence
|
|
301
301
|
* @returns WHERE condition expression
|
|
@@ -328,7 +328,7 @@ export declare const expr: {
|
|
|
328
328
|
/**
|
|
329
329
|
* AND operator - All conditions must be satisfied
|
|
330
330
|
*
|
|
331
|
-
*
|
|
331
|
+
* 여러 조건을 AND로 결합. where()에 배열을 전달하면 자동으로 AND 적용
|
|
332
332
|
*
|
|
333
333
|
* @param conditions - List of conditions to combine with AND
|
|
334
334
|
* @returns Combined WHERE condition expression
|
|
@@ -364,9 +364,9 @@ export declare const expr: {
|
|
|
364
364
|
*/
|
|
365
365
|
or(conditions: WhereExprUnit[]): WhereExprUnit;
|
|
366
366
|
/**
|
|
367
|
-
*
|
|
367
|
+
* 문자열 연결 (CONCAT)
|
|
368
368
|
*
|
|
369
|
-
* NULL
|
|
369
|
+
* NULL 값은 빈 문자열로 처리 (DBMS별 자동 변환)
|
|
370
370
|
*
|
|
371
371
|
* @param args - Strings to concatenate
|
|
372
372
|
* @returns Concatenated string expression
|
|
@@ -381,7 +381,7 @@ export declare const expr: {
|
|
|
381
381
|
*/
|
|
382
382
|
concat(...args: ExprInput<string | undefined>[]): ExprUnit<string>;
|
|
383
383
|
/**
|
|
384
|
-
*
|
|
384
|
+
* 문자열 왼쪽에서 지정 길이만큼 추출 (LEFT)
|
|
385
385
|
*
|
|
386
386
|
* @param source - Original string
|
|
387
387
|
* @param length - Number of characters to extract
|
|
@@ -397,7 +397,7 @@ export declare const expr: {
|
|
|
397
397
|
*/
|
|
398
398
|
left<T extends string | undefined>(source: ExprUnit<T>, length: ExprInput<number>): ExprUnit<T>;
|
|
399
399
|
/**
|
|
400
|
-
*
|
|
400
|
+
* 문자열 오른쪽에서 지정 길이만큼 추출 (RIGHT)
|
|
401
401
|
*
|
|
402
402
|
* @param source - Original string
|
|
403
403
|
* @param length - Number of characters to extract
|
|
@@ -413,7 +413,7 @@ export declare const expr: {
|
|
|
413
413
|
*/
|
|
414
414
|
right<T extends string | undefined>(source: ExprUnit<T>, length: ExprInput<number>): ExprUnit<T>;
|
|
415
415
|
/**
|
|
416
|
-
*
|
|
416
|
+
* 문자열 양쪽 공백 제거 (TRIM)
|
|
417
417
|
*
|
|
418
418
|
* @param source - Original string
|
|
419
419
|
* @returns String expression with whitespace removed
|
|
@@ -428,9 +428,9 @@ export declare const expr: {
|
|
|
428
428
|
*/
|
|
429
429
|
trim<T extends string | undefined>(source: ExprUnit<T>): ExprUnit<T>;
|
|
430
430
|
/**
|
|
431
|
-
*
|
|
431
|
+
* 왼쪽 패딩 (LPAD)
|
|
432
432
|
*
|
|
433
|
-
*
|
|
433
|
+
* 대상 길이에 도달할 때까지 왼쪽에 fillString을 반복 추가
|
|
434
434
|
*
|
|
435
435
|
* @param source - Original string
|
|
436
436
|
* @param length - Target length
|
|
@@ -448,7 +448,7 @@ export declare const expr: {
|
|
|
448
448
|
*/
|
|
449
449
|
padStart<T extends string | undefined>(source: ExprUnit<T>, length: ExprInput<number>, fillString: ExprInput<string>): ExprUnit<T>;
|
|
450
450
|
/**
|
|
451
|
-
*
|
|
451
|
+
* 문자열 치환 (REPLACE)
|
|
452
452
|
*
|
|
453
453
|
* @param source - Original string
|
|
454
454
|
* @param from - String to find
|
|
@@ -465,7 +465,7 @@ export declare const expr: {
|
|
|
465
465
|
*/
|
|
466
466
|
replace<T extends string | undefined>(source: ExprUnit<T>, from: ExprInput<string>, to: ExprInput<string>): ExprUnit<T>;
|
|
467
467
|
/**
|
|
468
|
-
*
|
|
468
|
+
* 문자열 대문자 변환 (UPPER)
|
|
469
469
|
*
|
|
470
470
|
* @param source - Original string
|
|
471
471
|
* @returns Uppercase string expression
|
|
@@ -480,7 +480,7 @@ export declare const expr: {
|
|
|
480
480
|
*/
|
|
481
481
|
upper<T extends string | undefined>(source: ExprUnit<T>): ExprUnit<T>;
|
|
482
482
|
/**
|
|
483
|
-
*
|
|
483
|
+
* 문자열 소문자 변환 (LOWER)
|
|
484
484
|
*
|
|
485
485
|
* @param source - Original string
|
|
486
486
|
* @returns Lowercase string expression
|
|
@@ -495,7 +495,7 @@ export declare const expr: {
|
|
|
495
495
|
*/
|
|
496
496
|
lower<T extends string | undefined>(source: ExprUnit<T>): ExprUnit<T>;
|
|
497
497
|
/**
|
|
498
|
-
*
|
|
498
|
+
* 문자열 길이 (문자 수)
|
|
499
499
|
*
|
|
500
500
|
* @param source - Original string
|
|
501
501
|
* @returns Character count
|
|
@@ -510,9 +510,9 @@ export declare const expr: {
|
|
|
510
510
|
*/
|
|
511
511
|
length(source: ExprUnit<string | undefined>): ExprUnit<number>;
|
|
512
512
|
/**
|
|
513
|
-
*
|
|
513
|
+
* 문자열 바이트 길이
|
|
514
514
|
*
|
|
515
|
-
*
|
|
515
|
+
* UTF-8에서 CJK 문자는 각 3바이트
|
|
516
516
|
*
|
|
517
517
|
* @param source - Original string
|
|
518
518
|
* @returns Byte count
|
|
@@ -527,9 +527,9 @@ export declare const expr: {
|
|
|
527
527
|
*/
|
|
528
528
|
byteLength(source: ExprUnit<string | undefined>): ExprUnit<number>;
|
|
529
529
|
/**
|
|
530
|
-
*
|
|
530
|
+
* 문자열 부분 추출 (SUBSTRING)
|
|
531
531
|
*
|
|
532
|
-
*
|
|
532
|
+
* SQL 표준에 따라 1부터 시작하는 인덱스 사용
|
|
533
533
|
*
|
|
534
534
|
* @param source - Original string
|
|
535
535
|
* @param start - Start position (starting from 1)
|
|
@@ -547,9 +547,9 @@ export declare const expr: {
|
|
|
547
547
|
*/
|
|
548
548
|
substring<T extends string | undefined>(source: ExprUnit<T>, start: ExprInput<number>, length?: ExprInput<number>): ExprUnit<T>;
|
|
549
549
|
/**
|
|
550
|
-
*
|
|
550
|
+
* 문자열 내 위치 찾기 (LOCATE/CHARINDEX)
|
|
551
551
|
*
|
|
552
|
-
*
|
|
552
|
+
* 1부터 시작하는 인덱스 반환, 찾지 못하면 0 반환
|
|
553
553
|
*
|
|
554
554
|
* @param source - String to search in
|
|
555
555
|
* @param search - String to find
|
|
@@ -566,7 +566,7 @@ export declare const expr: {
|
|
|
566
566
|
*/
|
|
567
567
|
indexOf(source: ExprUnit<string | undefined>, search: ExprInput<string>): ExprUnit<number>;
|
|
568
568
|
/**
|
|
569
|
-
*
|
|
569
|
+
* 절대값 (ABS)
|
|
570
570
|
*
|
|
571
571
|
* @param source - Original number
|
|
572
572
|
* @returns Absolute value expression
|
|
@@ -581,7 +581,7 @@ export declare const expr: {
|
|
|
581
581
|
*/
|
|
582
582
|
abs<T extends number | undefined>(source: ExprUnit<T>): ExprUnit<T>;
|
|
583
583
|
/**
|
|
584
|
-
*
|
|
584
|
+
* 반올림 (ROUND)
|
|
585
585
|
*
|
|
586
586
|
* @param source - Original number
|
|
587
587
|
* @param digits - Number of decimal places
|
|
@@ -598,7 +598,7 @@ export declare const expr: {
|
|
|
598
598
|
*/
|
|
599
599
|
round<T extends number | undefined>(source: ExprUnit<T>, digits: number): ExprUnit<T>;
|
|
600
600
|
/**
|
|
601
|
-
*
|
|
601
|
+
* 올림 (CEILING)
|
|
602
602
|
*
|
|
603
603
|
* @param source - Original number
|
|
604
604
|
* @returns Ceiling number expression
|
|
@@ -614,7 +614,7 @@ export declare const expr: {
|
|
|
614
614
|
*/
|
|
615
615
|
ceil<T extends number | undefined>(source: ExprUnit<T>): ExprUnit<T>;
|
|
616
616
|
/**
|
|
617
|
-
*
|
|
617
|
+
* 내림 (FLOOR)
|
|
618
618
|
*
|
|
619
619
|
* @param source - Original number
|
|
620
620
|
* @returns Floor number expression
|
|
@@ -630,7 +630,7 @@ export declare const expr: {
|
|
|
630
630
|
*/
|
|
631
631
|
floor<T extends number | undefined>(source: ExprUnit<T>): ExprUnit<T>;
|
|
632
632
|
/**
|
|
633
|
-
*
|
|
633
|
+
* 연도 추출 (YEAR)
|
|
634
634
|
*
|
|
635
635
|
* @param source - DateTime or DateOnly expression
|
|
636
636
|
* @returns Year (4-digit number)
|
|
@@ -645,7 +645,7 @@ export declare const expr: {
|
|
|
645
645
|
*/
|
|
646
646
|
year<T extends DateTime | DateOnly | undefined>(source: ExprUnit<T>): ExprUnit<T extends undefined ? undefined : number>;
|
|
647
647
|
/**
|
|
648
|
-
*
|
|
648
|
+
* 월 추출 (MONTH)
|
|
649
649
|
*
|
|
650
650
|
* @param source - DateTime or DateOnly expression
|
|
651
651
|
* @returns Month (1~12)
|
|
@@ -660,7 +660,7 @@ export declare const expr: {
|
|
|
660
660
|
*/
|
|
661
661
|
month<T extends DateTime | DateOnly | undefined>(source: ExprUnit<T>): ExprUnit<T extends undefined ? undefined : number>;
|
|
662
662
|
/**
|
|
663
|
-
*
|
|
663
|
+
* 일 추출 (DAY)
|
|
664
664
|
*
|
|
665
665
|
* @param source - DateTime or DateOnly expression
|
|
666
666
|
* @returns Day (1~31)
|
|
@@ -675,7 +675,7 @@ export declare const expr: {
|
|
|
675
675
|
*/
|
|
676
676
|
day<T extends DateTime | DateOnly | undefined>(source: ExprUnit<T>): ExprUnit<T extends undefined ? undefined : number>;
|
|
677
677
|
/**
|
|
678
|
-
*
|
|
678
|
+
* 시 추출 (HOUR)
|
|
679
679
|
*
|
|
680
680
|
* @param source - DateTime or Time expression
|
|
681
681
|
* @returns Hour (0~23)
|
|
@@ -690,7 +690,7 @@ export declare const expr: {
|
|
|
690
690
|
*/
|
|
691
691
|
hour<T extends DateTime | Time | undefined>(source: ExprUnit<T>): ExprUnit<T extends undefined ? undefined : number>;
|
|
692
692
|
/**
|
|
693
|
-
*
|
|
693
|
+
* 분 추출 (MINUTE)
|
|
694
694
|
*
|
|
695
695
|
* @param source - DateTime or Time expression
|
|
696
696
|
* @returns Minute (0~59)
|
|
@@ -705,7 +705,7 @@ export declare const expr: {
|
|
|
705
705
|
*/
|
|
706
706
|
minute<T extends DateTime | Time | undefined>(source: ExprUnit<T>): ExprUnit<T extends undefined ? undefined : number>;
|
|
707
707
|
/**
|
|
708
|
-
*
|
|
708
|
+
* 초 추출 (SECOND)
|
|
709
709
|
*
|
|
710
710
|
* @param source - DateTime or Time expression
|
|
711
711
|
* @returns Second (0~59)
|
|
@@ -720,7 +720,7 @@ export declare const expr: {
|
|
|
720
720
|
*/
|
|
721
721
|
second<T extends DateTime | Time | undefined>(source: ExprUnit<T>): ExprUnit<T extends undefined ? undefined : number>;
|
|
722
722
|
/**
|
|
723
|
-
*
|
|
723
|
+
* ISO 주 번호 추출
|
|
724
724
|
*
|
|
725
725
|
* ISO 8601 week number (starts Monday, 1~53)
|
|
726
726
|
*
|
|
@@ -739,7 +739,7 @@ export declare const expr: {
|
|
|
739
739
|
/**
|
|
740
740
|
* ISO week start date (Monday)
|
|
741
741
|
*
|
|
742
|
-
*
|
|
742
|
+
* 주어진 날짜가 속한 주의 월요일 반환
|
|
743
743
|
*
|
|
744
744
|
* @param source - DateOnly expression
|
|
745
745
|
* @returns Week start date (Monday)
|
|
@@ -756,7 +756,7 @@ export declare const expr: {
|
|
|
756
756
|
/**
|
|
757
757
|
* ISO year-month (first day of the month)
|
|
758
758
|
*
|
|
759
|
-
*
|
|
759
|
+
* 주어진 날짜의 해당 월 첫째 날 반환
|
|
760
760
|
*
|
|
761
761
|
* @param source - DateOnly expression
|
|
762
762
|
* @returns First day of the month
|
|
@@ -771,7 +771,7 @@ export declare const expr: {
|
|
|
771
771
|
*/
|
|
772
772
|
isoYearMonth<T extends DateOnly | undefined>(source: ExprUnit<T>): ExprUnit<T>;
|
|
773
773
|
/**
|
|
774
|
-
*
|
|
774
|
+
* 날짜 차이 계산 (DATEDIFF)
|
|
775
775
|
*
|
|
776
776
|
* @param unit - Unit ("year", "month", "day", "hour", "minute", "second")
|
|
777
777
|
* @param from - Start date
|
|
@@ -788,7 +788,7 @@ export declare const expr: {
|
|
|
788
788
|
*/
|
|
789
789
|
dateDiff<T extends DateTime | DateOnly | Time | undefined>(unit: DateUnit, from: ExprInput<T>, to: ExprInput<T>): ExprUnit<T extends undefined ? undefined : number>;
|
|
790
790
|
/**
|
|
791
|
-
*
|
|
791
|
+
* 날짜 더하기 (DATEADD)
|
|
792
792
|
*
|
|
793
793
|
* @param unit - Unit ("year", "month", "day", "hour", "minute", "second")
|
|
794
794
|
* @param source - Original date
|
|
@@ -805,9 +805,9 @@ export declare const expr: {
|
|
|
805
805
|
*/
|
|
806
806
|
dateAdd<T extends DateTime | DateOnly | Time | undefined>(unit: DateUnit, source: ExprUnit<T>, value: ExprInput<number>): ExprUnit<T>;
|
|
807
807
|
/**
|
|
808
|
-
*
|
|
808
|
+
* 날짜 포맷 (DATE_FORMAT)
|
|
809
809
|
*
|
|
810
|
-
*
|
|
810
|
+
* 포맷 문자열 규칙은 DBMS 구현에 따라 다를 수 있음
|
|
811
811
|
*
|
|
812
812
|
* @param source - Date expression
|
|
813
813
|
* @param format - Format string (e.g., "%Y-%m-%d")
|
|
@@ -826,7 +826,7 @@ export declare const expr: {
|
|
|
826
826
|
/**
|
|
827
827
|
* NULL replacement (COALESCE/IFNULL)
|
|
828
828
|
*
|
|
829
|
-
*
|
|
829
|
+
* 첫 번째 non-null 값 반환. 마지막 인수가 non-nullable이면 결과도 non-nullable
|
|
830
830
|
*
|
|
831
831
|
* @param args - Values to inspect (last is default value)
|
|
832
832
|
* @returns First non-null value
|
|
@@ -841,9 +841,9 @@ export declare const expr: {
|
|
|
841
841
|
*/
|
|
842
842
|
coalesce: typeof coalesce;
|
|
843
843
|
/**
|
|
844
|
-
*
|
|
844
|
+
* 값이 일치하면 NULL 반환 (NULLIF)
|
|
845
845
|
*
|
|
846
|
-
*
|
|
846
|
+
* source === value이면 NULL 반환, 아니면 source 반환
|
|
847
847
|
*
|
|
848
848
|
* @param source - Original value
|
|
849
849
|
* @param value - Value to compare
|
|
@@ -860,9 +860,9 @@ export declare const expr: {
|
|
|
860
860
|
*/
|
|
861
861
|
nullIf<T extends ColumnPrimitive>(source: ExprUnit<T>, value: ExprInput<T>): ExprUnit<T | undefined>;
|
|
862
862
|
/**
|
|
863
|
-
*
|
|
863
|
+
* WHERE expression을 boolean으로 변환
|
|
864
864
|
*
|
|
865
|
-
*
|
|
865
|
+
* 조건 결과를 SELECT 절에서 boolean column으로 사용할 때 사용
|
|
866
866
|
*
|
|
867
867
|
* @param condition - Condition to transform
|
|
868
868
|
* @returns boolean expression
|
|
@@ -879,7 +879,7 @@ export declare const expr: {
|
|
|
879
879
|
/**
|
|
880
880
|
* CASE WHEN expression builder
|
|
881
881
|
*
|
|
882
|
-
*
|
|
882
|
+
* 메서드 체이닝으로 조건 분기 구성
|
|
883
883
|
*
|
|
884
884
|
* @returns SwitchExprBuilder instance
|
|
885
885
|
*
|
|
@@ -897,7 +897,7 @@ export declare const expr: {
|
|
|
897
897
|
*/
|
|
898
898
|
switch<T extends ColumnPrimitive>(): SwitchExprBuilder<T>;
|
|
899
899
|
/**
|
|
900
|
-
*
|
|
900
|
+
* 단순 IF 조건 (삼항 연산자)
|
|
901
901
|
*
|
|
902
902
|
* @param condition - Condition
|
|
903
903
|
* @param then - Value when condition is true
|
|
@@ -914,7 +914,7 @@ export declare const expr: {
|
|
|
914
914
|
*/
|
|
915
915
|
if<T extends ColumnPrimitive>(condition: WhereExprUnit, then: ExprInput<T>, else_: ExprInput<T>): ExprUnit<T>;
|
|
916
916
|
/**
|
|
917
|
-
*
|
|
917
|
+
* 행 수 세기 (COUNT)
|
|
918
918
|
*
|
|
919
919
|
* @param arg - Column to count (all rows if omitted)
|
|
920
920
|
* @param distinct - If true, remove duplicates
|
|
@@ -933,7 +933,7 @@ export declare const expr: {
|
|
|
933
933
|
*/
|
|
934
934
|
count(arg?: ExprUnit<ColumnPrimitive>, distinct?: boolean): ExprUnit<number>;
|
|
935
935
|
/**
|
|
936
|
-
*
|
|
936
|
+
* 합계 (SUM)
|
|
937
937
|
*
|
|
938
938
|
* NULL values are ignored. Returns NULL if all values are NULL
|
|
939
939
|
*
|
|
@@ -950,7 +950,7 @@ export declare const expr: {
|
|
|
950
950
|
*/
|
|
951
951
|
sum(arg: ExprUnit<number | undefined>): ExprUnit<number | undefined>;
|
|
952
952
|
/**
|
|
953
|
-
*
|
|
953
|
+
* 평균 (AVG)
|
|
954
954
|
*
|
|
955
955
|
* NULL values are ignored. Returns NULL if all values are NULL
|
|
956
956
|
*
|
|
@@ -967,7 +967,7 @@ export declare const expr: {
|
|
|
967
967
|
*/
|
|
968
968
|
avg(arg: ExprUnit<number | undefined>): ExprUnit<number | undefined>;
|
|
969
969
|
/**
|
|
970
|
-
*
|
|
970
|
+
* 최대값 (MAX)
|
|
971
971
|
*
|
|
972
972
|
* NULL values are ignored. Returns NULL if all values are NULL
|
|
973
973
|
*
|
|
@@ -984,7 +984,7 @@ export declare const expr: {
|
|
|
984
984
|
*/
|
|
985
985
|
max<T extends ColumnPrimitive>(arg: ExprUnit<T>): ExprUnit<T | undefined>;
|
|
986
986
|
/**
|
|
987
|
-
*
|
|
987
|
+
* 최소값 (MIN)
|
|
988
988
|
*
|
|
989
989
|
* NULL values are ignored. Returns NULL if all values are NULL
|
|
990
990
|
*
|
|
@@ -1001,7 +1001,7 @@ export declare const expr: {
|
|
|
1001
1001
|
*/
|
|
1002
1002
|
min<T extends ColumnPrimitive>(arg: ExprUnit<T>): ExprUnit<T | undefined>;
|
|
1003
1003
|
/**
|
|
1004
|
-
*
|
|
1004
|
+
* 여러 값 중 최대값 선택 (GREATEST)
|
|
1005
1005
|
*
|
|
1006
1006
|
* @param args - Values to compare
|
|
1007
1007
|
* @returns Greatest value
|
|
@@ -1016,7 +1016,7 @@ export declare const expr: {
|
|
|
1016
1016
|
*/
|
|
1017
1017
|
greatest<T extends ColumnPrimitive>(...args: ExprInput<T>[]): ExprUnit<T>;
|
|
1018
1018
|
/**
|
|
1019
|
-
*
|
|
1019
|
+
* 여러 값 중 최소값 선택 (LEAST)
|
|
1020
1020
|
*
|
|
1021
1021
|
* @param args - Values to compare
|
|
1022
1022
|
* @returns Least value
|
|
@@ -1031,7 +1031,7 @@ export declare const expr: {
|
|
|
1031
1031
|
*/
|
|
1032
1032
|
least<T extends ColumnPrimitive>(...args: ExprInput<T>[]): ExprUnit<T>;
|
|
1033
1033
|
/**
|
|
1034
|
-
*
|
|
1034
|
+
* 행 번호 (ROW_NUMBER 없이 모든 행에 순번 부여)
|
|
1035
1035
|
*
|
|
1036
1036
|
* @returns Row number (starting from 1)
|
|
1037
1037
|
*
|
|
@@ -1045,9 +1045,9 @@ export declare const expr: {
|
|
|
1045
1045
|
*/
|
|
1046
1046
|
rowNum(): ExprUnit<number>;
|
|
1047
1047
|
/**
|
|
1048
|
-
*
|
|
1048
|
+
* 난수 생성 (RAND/RANDOM)
|
|
1049
1049
|
*
|
|
1050
|
-
*
|
|
1050
|
+
* 0과 1 사이의 난수 반환. 주로 ORDER BY에서 무작위 정렬에 사용
|
|
1051
1051
|
*
|
|
1052
1052
|
* @returns Random number between 0 and 1
|
|
1053
1053
|
*
|
|
@@ -1075,9 +1075,9 @@ export declare const expr: {
|
|
|
1075
1075
|
*/
|
|
1076
1076
|
cast<T extends ColumnPrimitive, TDataType extends DataType>(source: ExprUnit<T>, targetType: TDataType): ExprUnit<T extends undefined ? undefined : InferColumnPrimitiveFromDataType<TDataType>>;
|
|
1077
1077
|
/**
|
|
1078
|
-
*
|
|
1078
|
+
* 스칼라 Subquery - SELECT 절에서 단일 값을 반환하는 서브쿼리
|
|
1079
1079
|
*
|
|
1080
|
-
*
|
|
1080
|
+
* 서브쿼리는 정확히 하나의 행과 하나의 column을 반환해야 함
|
|
1081
1081
|
*
|
|
1082
1082
|
* @param dataType - Data type of the returned value
|
|
1083
1083
|
* @param queryable - Queryable that returns a scalar value
|
|
@@ -1103,7 +1103,7 @@ export declare const expr: {
|
|
|
1103
1103
|
/**
|
|
1104
1104
|
* ROW_NUMBER() - Row number within a partition
|
|
1105
1105
|
*
|
|
1106
|
-
*
|
|
1106
|
+
* 각 파티션 내에서 1부터 시작하는 순번 부여
|
|
1107
1107
|
*
|
|
1108
1108
|
* @param spec - Window spec (partitionBy, orderBy)
|
|
1109
1109
|
* @returns Row number (starting from 1)
|
|
@@ -1355,7 +1355,7 @@ export declare const expr: {
|
|
|
1355
1355
|
*/
|
|
1356
1356
|
maxOver<T extends ColumnPrimitive>(column: ExprUnit<T>, spec: WinSpecInput): ExprUnit<T | undefined>;
|
|
1357
1357
|
/**
|
|
1358
|
-
*
|
|
1358
|
+
* ExprInput을 Expr로 변환 (내부 사용)
|
|
1359
1359
|
*
|
|
1360
1360
|
* @param value - Value to transform
|
|
1361
1361
|
* @returns Expr JSON AST
|