@rex0220/kintone-sql-tools 3.80.0 → 3.82.0

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.
@@ -69,7 +69,7 @@
69
69
  "format": "esm"
70
70
  },
71
71
  "src/types/ast.ts": {
72
- "bytes": 38496,
72
+ "bytes": 38903,
73
73
  "imports": [
74
74
  {
75
75
  "path": "src/core/exactDecimal.ts",
@@ -101,7 +101,7 @@
101
101
  "format": "esm"
102
102
  },
103
103
  "src/parser/parser.ts": {
104
- "bytes": 218421,
104
+ "bytes": 228232,
105
105
  "imports": [
106
106
  {
107
107
  "path": "src/lexer/tokens.ts",
@@ -215,7 +215,7 @@
215
215
  "format": "esm"
216
216
  },
217
217
  "src/core/aggregateDependencyValidation.ts": {
218
- "bytes": 17909,
218
+ "bytes": 18594,
219
219
  "imports": [
220
220
  {
221
221
  "path": "src/core/grouping.ts",
@@ -236,7 +236,7 @@
236
236
  "format": "esm"
237
237
  },
238
238
  "src/core/groupingValidation.ts": {
239
- "bytes": 11558,
239
+ "bytes": 11186,
240
240
  "imports": [
241
241
  {
242
242
  "path": "src/core/grouping.ts",
@@ -257,7 +257,7 @@
257
257
  "format": "esm"
258
258
  },
259
259
  "src/converter/selectToKintone.ts": {
260
- "bytes": 30353,
260
+ "bytes": 32606,
261
261
  "imports": [
262
262
  {
263
263
  "path": "../types/ast",
@@ -565,7 +565,7 @@
565
565
  "format": "esm"
566
566
  },
567
567
  "src/core/dmlGuard.ts": {
568
- "bytes": 10251,
568
+ "bytes": 10287,
569
569
  "imports": [
570
570
  {
571
571
  "path": "src/types/ast.ts",
@@ -1090,7 +1090,7 @@
1090
1090
  "format": "esm"
1091
1091
  },
1092
1092
  "src/core/explainMetadata.ts": {
1093
- "bytes": 6340,
1093
+ "bytes": 6423,
1094
1094
  "imports": [
1095
1095
  {
1096
1096
  "path": "src/core/grouping.ts",
@@ -1169,7 +1169,7 @@
1169
1169
  "format": "esm"
1170
1170
  },
1171
1171
  "src/core/optimization/canonicalOrderPlanner.ts": {
1172
- "bytes": 5042,
1172
+ "bytes": 5113,
1173
1173
  "imports": [
1174
1174
  {
1175
1175
  "path": "src/core/projectedNameResolution.ts",
@@ -1217,7 +1217,7 @@
1217
1217
  "format": "esm"
1218
1218
  },
1219
1219
  "src/engine/process.ts": {
1220
- "bytes": 91312,
1220
+ "bytes": 95885,
1221
1221
  "imports": [
1222
1222
  {
1223
1223
  "path": "src/core/optimization/crossJoinRowPlan.ts",
@@ -1538,7 +1538,7 @@
1538
1538
  "format": "esm"
1539
1539
  },
1540
1540
  "src/execute.ts": {
1541
- "bytes": 653508,
1541
+ "bytes": 657418,
1542
1542
  "imports": [
1543
1543
  {
1544
1544
  "path": "src/lexer/lexer.ts",
@@ -2272,7 +2272,7 @@
2272
2272
  "bytesInOutput": 3001
2273
2273
  },
2274
2274
  "src/parser/parser.ts": {
2275
- "bytesInOutput": 128834
2275
+ "bytesInOutput": 133712
2276
2276
  },
2277
2277
  "src/engine/pushDownNot.ts": {
2278
2278
  "bytesInOutput": 793
@@ -2296,13 +2296,13 @@
2296
2296
  "bytesInOutput": 102
2297
2297
  },
2298
2298
  "src/core/aggregateDependencyValidation.ts": {
2299
- "bytesInOutput": 8267
2299
+ "bytesInOutput": 8607
2300
2300
  },
2301
2301
  "src/core/groupingValidation.ts": {
2302
- "bytesInOutput": 3833
2302
+ "bytesInOutput": 3596
2303
2303
  },
2304
2304
  "src/converter/selectToKintone.ts": {
2305
- "bytesInOutput": 10224
2305
+ "bytesInOutput": 10890
2306
2306
  },
2307
2307
  "src/core/cteInlining.ts": {
2308
2308
  "bytesInOutput": 1164
@@ -2341,7 +2341,7 @@
2341
2341
  "bytesInOutput": 1035
2342
2342
  },
2343
2343
  "src/core/generateSeries.ts": {
2344
- "bytesInOutput": 10824
2344
+ "bytesInOutput": 10855
2345
2345
  },
2346
2346
  "src/core/statementValidation.ts": {
2347
2347
  "bytesInOutput": 239
@@ -2353,7 +2353,7 @@
2353
2353
  "bytesInOutput": 2222
2354
2354
  },
2355
2355
  "src/core/dmlGuard.ts": {
2356
- "bytesInOutput": 3312
2356
+ "bytesInOutput": 3339
2357
2357
  },
2358
2358
  "src/core/batch.ts": {
2359
2359
  "bytesInOutput": 6386
@@ -2452,7 +2452,7 @@
2452
2452
  "bytesInOutput": 246
2453
2453
  },
2454
2454
  "src/core/optimization/canonicalOrderPlanner.ts": {
2455
- "bytesInOutput": 1884
2455
+ "bytesInOutput": 1936
2456
2456
  },
2457
2457
  "src/core/optimization/korderPlanner.ts": {
2458
2458
  "bytesInOutput": 2244
@@ -2470,7 +2470,7 @@
2470
2470
  "bytesInOutput": 1223
2471
2471
  },
2472
2472
  "src/engine/process.ts": {
2473
- "bytesInOutput": 28054
2473
+ "bytesInOutput": 29670
2474
2474
  },
2475
2475
  "src/converter/subtableAdapter.ts": {
2476
2476
  "bytesInOutput": 643
@@ -2533,7 +2533,7 @@
2533
2533
  "bytesInOutput": 412
2534
2534
  },
2535
2535
  "src/execute.ts": {
2536
- "bytesInOutput": 256407
2536
+ "bytesInOutput": 257831
2537
2537
  },
2538
2538
  "src/api/cursorLeaseManager.ts": {
2539
2539
  "bytesInOutput": 1777
@@ -2587,7 +2587,7 @@
2587
2587
  "bytesInOutput": 1593
2588
2588
  }
2589
2589
  },
2590
- "bytes": 710777
2590
+ "bytes": 719574
2591
2591
  }
2592
2592
  }
2593
2593
  }
@@ -69,7 +69,7 @@
69
69
  "format": "esm"
70
70
  },
71
71
  "src/types/ast.ts": {
72
- "bytes": 38496,
72
+ "bytes": 38903,
73
73
  "imports": [
74
74
  {
75
75
  "path": "src/core/exactDecimal.ts",
@@ -101,7 +101,7 @@
101
101
  "format": "esm"
102
102
  },
103
103
  "src/parser/parser.ts": {
104
- "bytes": 218421,
104
+ "bytes": 228232,
105
105
  "imports": [
106
106
  {
107
107
  "path": "src/lexer/tokens.ts",
@@ -215,7 +215,7 @@
215
215
  "format": "esm"
216
216
  },
217
217
  "src/core/aggregateDependencyValidation.ts": {
218
- "bytes": 17909,
218
+ "bytes": 18594,
219
219
  "imports": [
220
220
  {
221
221
  "path": "src/core/grouping.ts",
@@ -236,7 +236,7 @@
236
236
  "format": "esm"
237
237
  },
238
238
  "src/core/groupingValidation.ts": {
239
- "bytes": 11558,
239
+ "bytes": 11186,
240
240
  "imports": [
241
241
  {
242
242
  "path": "src/core/grouping.ts",
@@ -257,7 +257,7 @@
257
257
  "format": "esm"
258
258
  },
259
259
  "src/converter/selectToKintone.ts": {
260
- "bytes": 30353,
260
+ "bytes": 32606,
261
261
  "imports": [
262
262
  {
263
263
  "path": "../types/ast",
@@ -565,7 +565,7 @@
565
565
  "format": "esm"
566
566
  },
567
567
  "src/core/dmlGuard.ts": {
568
- "bytes": 10251,
568
+ "bytes": 10287,
569
569
  "imports": [
570
570
  {
571
571
  "path": "src/types/ast.ts",
@@ -1090,7 +1090,7 @@
1090
1090
  "format": "esm"
1091
1091
  },
1092
1092
  "src/core/explainMetadata.ts": {
1093
- "bytes": 6340,
1093
+ "bytes": 6423,
1094
1094
  "imports": [
1095
1095
  {
1096
1096
  "path": "src/core/grouping.ts",
@@ -1169,7 +1169,7 @@
1169
1169
  "format": "esm"
1170
1170
  },
1171
1171
  "src/core/optimization/canonicalOrderPlanner.ts": {
1172
- "bytes": 5042,
1172
+ "bytes": 5113,
1173
1173
  "imports": [
1174
1174
  {
1175
1175
  "path": "src/core/projectedNameResolution.ts",
@@ -1217,7 +1217,7 @@
1217
1217
  "format": "esm"
1218
1218
  },
1219
1219
  "src/engine/process.ts": {
1220
- "bytes": 91312,
1220
+ "bytes": 95885,
1221
1221
  "imports": [
1222
1222
  {
1223
1223
  "path": "src/core/optimization/crossJoinRowPlan.ts",
@@ -1538,7 +1538,7 @@
1538
1538
  "format": "esm"
1539
1539
  },
1540
1540
  "src/execute.ts": {
1541
- "bytes": 653508,
1541
+ "bytes": 657418,
1542
1542
  "imports": [
1543
1543
  {
1544
1544
  "path": "src/lexer/lexer.ts",
@@ -2287,7 +2287,7 @@
2287
2287
  "bytesInOutput": 3001
2288
2288
  },
2289
2289
  "src/parser/parser.ts": {
2290
- "bytesInOutput": 128834
2290
+ "bytesInOutput": 133712
2291
2291
  },
2292
2292
  "src/engine/pushDownNot.ts": {
2293
2293
  "bytesInOutput": 793
@@ -2311,13 +2311,13 @@
2311
2311
  "bytesInOutput": 102
2312
2312
  },
2313
2313
  "src/core/aggregateDependencyValidation.ts": {
2314
- "bytesInOutput": 8267
2314
+ "bytesInOutput": 8607
2315
2315
  },
2316
2316
  "src/core/groupingValidation.ts": {
2317
- "bytesInOutput": 3833
2317
+ "bytesInOutput": 3596
2318
2318
  },
2319
2319
  "src/converter/selectToKintone.ts": {
2320
- "bytesInOutput": 10224
2320
+ "bytesInOutput": 10890
2321
2321
  },
2322
2322
  "src/core/cteInlining.ts": {
2323
2323
  "bytesInOutput": 1164
@@ -2356,7 +2356,7 @@
2356
2356
  "bytesInOutput": 1035
2357
2357
  },
2358
2358
  "src/core/generateSeries.ts": {
2359
- "bytesInOutput": 10824
2359
+ "bytesInOutput": 10855
2360
2360
  },
2361
2361
  "src/core/statementValidation.ts": {
2362
2362
  "bytesInOutput": 239
@@ -2368,7 +2368,7 @@
2368
2368
  "bytesInOutput": 2222
2369
2369
  },
2370
2370
  "src/core/dmlGuard.ts": {
2371
- "bytesInOutput": 3312
2371
+ "bytesInOutput": 3339
2372
2372
  },
2373
2373
  "src/core/batch.ts": {
2374
2374
  "bytesInOutput": 6386
@@ -2467,7 +2467,7 @@
2467
2467
  "bytesInOutput": 246
2468
2468
  },
2469
2469
  "src/core/optimization/canonicalOrderPlanner.ts": {
2470
- "bytesInOutput": 1884
2470
+ "bytesInOutput": 1936
2471
2471
  },
2472
2472
  "src/core/optimization/korderPlanner.ts": {
2473
2473
  "bytesInOutput": 2244
@@ -2485,7 +2485,7 @@
2485
2485
  "bytesInOutput": 1223
2486
2486
  },
2487
2487
  "src/engine/process.ts": {
2488
- "bytesInOutput": 28054
2488
+ "bytesInOutput": 29670
2489
2489
  },
2490
2490
  "src/converter/subtableAdapter.ts": {
2491
2491
  "bytesInOutput": 643
@@ -2548,7 +2548,7 @@
2548
2548
  "bytesInOutput": 412
2549
2549
  },
2550
2550
  "src/execute.ts": {
2551
- "bytesInOutput": 256407
2551
+ "bytesInOutput": 257831
2552
2552
  },
2553
2553
  "src/api/cursorLeaseManager.ts": {
2554
2554
  "bytesInOutput": 1777
@@ -2605,7 +2605,7 @@
2605
2605
  "bytesInOutput": 1593
2606
2606
  }
2607
2607
  },
2608
- "bytes": 709991
2608
+ "bytes": 718788
2609
2609
  }
2610
2610
  }
2611
2611
  }
@@ -149,6 +149,8 @@ export interface SelectStatement {
149
149
  type: "SELECT";
150
150
  distinct: boolean;
151
151
  columns: SelectColumn[];
152
+ /** SELECT 式から切り出した非公開ウィンドウ列。公開結果の列位置には含めない。 */
153
+ hiddenWindows?: WindowColumn[];
152
154
  from: TableRef;
153
155
  joins: JoinClause[];
154
156
  where: WhereExpr | null;
@@ -204,6 +206,7 @@ export type WindowFunc = "ROW_NUMBER" | "RANK" | "DENSE_RANK";
204
206
  export type WindowAggFunc = "SUM" | "COUNT" | "AVG" | "MIN" | "MAX";
205
207
  export type ValueWindowFunc = "LAG" | "LEAD";
206
208
  export type WindowFrameUnit = "ROWS" | "RANGE";
209
+ export type WindowPartitionKey = FieldRef | GroupingRef;
207
210
  export interface WindowFrame {
208
211
  unit: WindowFrameUnit;
209
212
  source: "DEFAULT" | "EXPLICIT";
@@ -213,7 +216,7 @@ export interface RankingWindowColumn extends SelectAliasDisplay {
213
216
  type: "WINDOW_COL";
214
217
  windowKind?: "RANKING";
215
218
  func: WindowFunc;
216
- partitionBy: FieldRef[];
219
+ partitionBy: WindowPartitionKey[];
217
220
  orderBy: OrderByItem[];
218
221
  alias: string;
219
222
  }
@@ -224,7 +227,7 @@ export interface AggregateWindowColumn extends SelectAliasDisplay {
224
227
  aggFunc: WindowAggFunc;
225
228
  arg: WildcardColumn | AggregateArgExpr;
226
229
  frame: WindowFrame | null;
227
- partitionBy: FieldRef[];
230
+ partitionBy: WindowPartitionKey[];
228
231
  orderBy: OrderByItem[];
229
232
  alias: string;
230
233
  }
@@ -235,7 +238,7 @@ export interface ValueWindowColumn extends SelectAliasDisplay {
235
238
  valueFunc: ValueWindowFunc;
236
239
  arg: ScalarValueExpr;
237
240
  offset: number;
238
- partitionBy: FieldRef[];
241
+ partitionBy: WindowPartitionKey[];
239
242
  orderBy: OrderByItem[];
240
243
  alias: string;
241
244
  }
@@ -387,6 +390,8 @@ export interface FieldRef {
387
390
  field: string;
388
391
  /** SELECT CASE 条件・HAVING で合成フィールド名へ変換した集計の評価情報。 */
389
392
  aggregateRef?: AggregateRef;
393
+ /** SELECT 式内の非公開ウィンドウ値を参照する内部ノード。 */
394
+ hiddenWindowRef?: true;
390
395
  }
391
396
  /** HAVING 左辺に直接書かれた集計算術式。 */
392
397
  export interface AggregateFieldValue {
@@ -548,6 +553,7 @@ export type NormalizedGroupingSpec = {
548
553
  export type OrderByKey = {
549
554
  type: "FIELD_NAME";
550
555
  name: string;
556
+ aggregateRef?: AggregateRef;
551
557
  } | {
552
558
  type: "ARITH_KEY";
553
559
  expr: ArithNode;
@@ -809,6 +815,7 @@ export type ArithOp = "+" | "-" | "*" | "/" | "%";
809
815
  export type ArithNode = {
810
816
  type: "FIELD_REF";
811
817
  field: string;
818
+ hiddenWindowRef?: true;
812
819
  } | NumberLiteral | LegacyArithExpr | StringFuncExpr | VariableRef;
813
820
  /** 後方互換エイリアス */
814
821
  export type ArithOperand = ArithNode;