@maiyunnet/kebab 9.19.1 → 9.20.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.
- package/doc/kebab-rag.md +614 -187
- package/index.d.ts +1 -1
- package/index.js +1 -1
- package/lib/sql.d.ts +15 -0
- package/lib/sql.js +60 -1
- package/lib/text.d.ts +13 -0
- package/lib/text.js +36 -0
- package/package.json +1 -1
- package/sys/mod.d.ts +32 -0
- package/sys/mod.js +83 -0
- package/www/example/ctr/test.js +163 -1
package/doc/kebab-rag.md
CHANGED
|
@@ -121,6 +121,157 @@ public create(): kebab.Json[] {
|
|
|
121
121
|
|
|
122
122
|
`_valibotx` 默认先校验 `_xsrf`,通过后才运行 schema,且 `_xsrf` 不会被自动加入 schema 输出。仅在已有等效安全机制时才可使用 `{ 'ignoreXsrf': true }`。只读请求使用 `_valibot`。
|
|
123
123
|
|
|
124
|
+
query-pagination.md
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
# 游标分页与 PostgreSQL 近似总数
|
|
128
|
+
|
|
129
|
+
日志、硬件消息等大量追加记录的列表,可以用 `allCursor()` 顺序读取上一批、下一批,并通过 `totalEstimate()` 展示近似总量。普通 `page()`、`total()` 保持原有行为。
|
|
130
|
+
|
|
131
|
+
## by() 与 seek()
|
|
132
|
+
|
|
133
|
+
`by()` 只设置 ORDER BY,支持各字段使用不同的排序方向。`seek(fields, values?, direction?)` 用于非空、同向排序的游标字段:传入 `values` 时,在原 WHERE 后追加参数化边界条件,再调用 `by()` 设置排序;不传 `values` 时,只校验字段并设置排序。
|
|
134
|
+
|
|
135
|
+
```ts
|
|
136
|
+
// --- 首批:相同字段、方向下,两种写法生成相同 SQL ---
|
|
137
|
+
base.copy().by(['time_add', 'id'], 'DESC').limit(20);
|
|
138
|
+
base.copy().seek(['time_add', 'id']).limit(20);
|
|
139
|
+
|
|
140
|
+
// --- 下一批:传上一批末行的值,增加 WHERE 边界,无 OFFSET ---
|
|
141
|
+
base.copy().seek(['time_add', 'id'], [1700500000, '9007199254740993']).limit(20);
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
最后一条查询在原筛选后追加的条件相当于:
|
|
145
|
+
|
|
146
|
+
```sql
|
|
147
|
+
AND (time_add, id) < (?, ?)
|
|
148
|
+
AND time_add <= ?
|
|
149
|
+
ORDER BY time_add DESC, id DESC
|
|
150
|
+
LIMIT 20
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
这是使用 `?` 表示参数位置的示意;PostgreSQL 实际使用 `$1`、`$2` 等占位符。复合边界中的 ID 区分同一时间的记录;显式首列范围有助于 PostgreSQL 收紧索引扫描边界。升序使用 `>` 和 `>=`。
|
|
154
|
+
|
|
155
|
+
`seek()` 必须在排序、分页、分组之前调用,不需要再调用 `by()`。它只构建 SQL,业务分页推荐使用模型的 `allCursor()`,由模型处理多取一条和上一批结果的顺序恢复。
|
|
156
|
+
|
|
157
|
+
## allCursor() 的返回值
|
|
158
|
+
|
|
159
|
+
`allCursor(count, options)` 多取一条,通过实际查询结果判断还有没有后续记录,返回的 `list` 最多包含 `count` 条。查询失败返回 `false`;成功但无匹配记录时,`list` 为空,两个游标为 `null`。
|
|
160
|
+
|
|
161
|
+
| 字段 | 含义 |
|
|
162
|
+
| --- | --- |
|
|
163
|
+
| `list` | 本批数据,始终保持 `order` 指定的展示顺序 |
|
|
164
|
+
| `next` | 本批末行的排序字段值,用于读取下一批 |
|
|
165
|
+
| `previous` | 本批首行的排序字段值,用于读取上一批 |
|
|
166
|
+
| `hasMore` | 沿本次查询方向,是否还有更多记录 |
|
|
167
|
+
|
|
168
|
+
`next`、`previous` 是行边界,不是翻页许可。第一页的 `previous`、最后一页的 `next` 都可能有值,不能仅凭游标非空启用按钮。
|
|
169
|
+
|
|
170
|
+
## 首批、下一页与上一页
|
|
171
|
+
|
|
172
|
+
| 操作 | `cursor` | `before` | 返回的 `hasMore` 表示 |
|
|
173
|
+
| --- | --- | --- | --- |
|
|
174
|
+
| 首次查询 | 不传 | 不传或 `false` | 是否还有下一页 |
|
|
175
|
+
| 下一页 | 当前结果的 `next` | `false` | 是否还有下一页 |
|
|
176
|
+
| 上一页 | 当前结果的 `previous` | `true` | 是否还有上一页 |
|
|
177
|
+
|
|
178
|
+
无论向哪边翻页,`order` 都保持原展示方向。`before: true` 时,框架内部反向扫描,截取本批数据后再反转列表,调用方不用再次反转。
|
|
179
|
+
|
|
180
|
+
每次查询成功后,都要保存新结果的首末行游标。翻页期间保持筛选条件、结束时间、每批数量和排序不变;筛选或数量变化时重新读取首批。
|
|
181
|
+
|
|
182
|
+
## 业务侧的翻页按钮
|
|
183
|
+
|
|
184
|
+
下面以 PostgreSQL 消息模型为例,假设 `db`、`mMessage`、已校验的 `start` 和固定的 `end` 已由调用方提供。实际项目应把实体查询放在自定义 MOD 中。
|
|
185
|
+
|
|
186
|
+
```ts
|
|
187
|
+
import * as lSql from '@maiyunnet/kebab/lib/sql.js';
|
|
188
|
+
|
|
189
|
+
const query = mMessage.select<mMessage>(db, [
|
|
190
|
+
'm.id::text id', 'm.time_add',
|
|
191
|
+
], { 'alias': 'm' }).filter([
|
|
192
|
+
['m.time_add', '>=', start],
|
|
193
|
+
['m.time_add', '<=', end],
|
|
194
|
+
]);
|
|
195
|
+
|
|
196
|
+
/**
|
|
197
|
+
* --- 读取一批消息,并将扫描方向转换为上一页、下一页状态 ---
|
|
198
|
+
* @param direction 翻页方向,首次读取使用 next 且不传 cursor
|
|
199
|
+
* @param cursor 当前页的末行或首行游标
|
|
200
|
+
* @returns 分页结果;数据库查询失败返回 false
|
|
201
|
+
*/
|
|
202
|
+
async function readPage(direction: 'next' | 'prev', cursor?: lSql.TCursorValue[]) {
|
|
203
|
+
const before = direction === 'prev';
|
|
204
|
+
const page = await query.allCursor(20, {
|
|
205
|
+
'by': ['m.time_add', 'm.id'],
|
|
206
|
+
'order': 'DESC',
|
|
207
|
+
'cursor': cursor,
|
|
208
|
+
'before': before,
|
|
209
|
+
});
|
|
210
|
+
if (page === false) {
|
|
211
|
+
return false;
|
|
212
|
+
}
|
|
213
|
+
const returnedRows = page.list.length > 0;
|
|
214
|
+
return {
|
|
215
|
+
'list': page.list,
|
|
216
|
+
'nextCursor': page.next,
|
|
217
|
+
'prevCursor': page.previous,
|
|
218
|
+
'hasNext': before ? !!cursor && returnedRows : page.hasMore,
|
|
219
|
+
'hasPrev': before ? page.hasMore : !!cursor && returnedRows,
|
|
220
|
+
};
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
// --- 首次查询 ---
|
|
224
|
+
let current = await readPage('next');
|
|
225
|
+
|
|
226
|
+
// --- 点击下一页:传当前页末行游标 ---
|
|
227
|
+
if (current !== false && current.hasNext && current.nextCursor) {
|
|
228
|
+
const result = await readPage('next', current.nextCursor);
|
|
229
|
+
if (result !== false) {
|
|
230
|
+
current = result;
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
// --- 点击上一页:传当前页首行游标,readPage 内部设置 before: true ---
|
|
235
|
+
if (current !== false && current.hasPrev && current.prevCursor) {
|
|
236
|
+
const result = await readPage('prev', current.prevCursor);
|
|
237
|
+
if (result !== false) {
|
|
238
|
+
current = result;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
沿查询方向的按钮状态来自 `hasMore`;另一侧根据“已从那一页翻过来,并且本次返回非空结果”的浏览状态判断,这没有同时扫描两侧。如果业务允许删除历史记录,反方向状态也可能变化;翻页查询失败或原有页面因删除变为空时,界面可以保留原页并提示重新刷新。
|
|
244
|
+
|
|
245
|
+
例如,每批两条、降序记录为 `92、82、80、79`:首批 `92、82` 有下一页、无上一页;传其 `next` 得到 `80、79`,无下一页、有上一页;再传这一批的 `previous` 并设置 `before: true`,返回 `92、82`。
|
|
246
|
+
|
|
247
|
+
## 近似总数
|
|
248
|
+
|
|
249
|
+
`totalEstimate()` 仅支持 PostgreSQL。它移除原 SELECT 的外层 ORDER BY、LIMIT/OFFSET,执行普通 `EXPLAIN (FORMAT JSON)`,读取顶层 `Plan Rows`;不使用 ANALYZE,不执行原 SELECT,也不回退到 COUNT。
|
|
250
|
+
|
|
251
|
+
```ts
|
|
252
|
+
// --- 对基础筛选估算一次,不带游标条件 ---
|
|
253
|
+
const estimated = await query.totalEstimate();
|
|
254
|
+
const total = estimated === false ? null : estimated;
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
失败、其他数据库、框架分表模式或 contain 返回 `false`,不能解释为总数为零。统计信息陈旧、字段相关性或罕见取值可能导致明显偏差;即使估算为 1,实际查询也可能没有匹配记录。
|
|
258
|
+
|
|
259
|
+
界面应明确标注近似总数,例如“约 120 万条”,仅首次筛选时估算,翻页复用。按钮由实际分页结果决定,不能根据近似总数计算是否允许继续翻页。首批已经读取完整结果时,可以用 `list.length` 得到精确总数。
|
|
260
|
+
|
|
261
|
+
展示用途的 JOIN 如果不改变原始记录的筛选或数量,可以对不带 JOIN 的基础实体查询估算;JOIN 参与筛选或产生重复行时,需要先明确统计的对象。
|
|
262
|
+
|
|
263
|
+
## 字段、索引与限制
|
|
264
|
+
|
|
265
|
+
- 排序字段必须全部非空、方向一致,且组合唯一,通常使用 `time_add、id`。
|
|
266
|
+
- SELECT 必须包含排序字段。`by` 有表别名时,默认从结果中取不带表别名的 key;结果字段改名时,通过 `keys` 显式指定对应关系。
|
|
267
|
+
- 大整数在数据库投影时取为字符串,并以字符串传回。不能先由驱动转成不安全的 Number,再 stringify。上例 PostgreSQL 使用 `m.id::text id`,排序仍使用原表数值字段 `m.id`。
|
|
268
|
+
- `null`、不安全的数值边界、非法字段和不支持的查询结构会抛出配置错误。字段和排序规则由服务端固定,游标及筛选参数在请求入口校验。
|
|
269
|
+
- 支持 PostgreSQL 原生分区表、MySQL 普通表;不支持模型 `index` 分表、contain、分组、UNION 或混合方向排序。`allCursor()` 不修改基础模型查询。
|
|
270
|
+
- 典型索引为 `(time_add, id)`,按设备筛选时为 `(no, time_add, id)`。ASC B-tree 支持整体反向扫描,无需为同向降序再重复创建索引。
|
|
271
|
+
- 固定结束时间可以减小新增记录对浏览的影响,游标分页不等同于跨请求事务快照,也不提供按任意页码直接跳转。
|
|
272
|
+
|
|
273
|
+
可运行演示见示例项目的 `test/mod-test`、`test/mod-test?s=pgsql` 和 `test/sql?type=seek`。
|
|
274
|
+
|
|
124
275
|
index/index.md
|
|
125
276
|
---
|
|
126
277
|
|
|
@@ -1438,7 +1589,7 @@ index/variables/VER.md
|
|
|
1438
1589
|
|
|
1439
1590
|
# Variable: VER
|
|
1440
1591
|
|
|
1441
|
-
> `const` **VER**: `"9.
|
|
1592
|
+
> `const` **VER**: `"9.20.0"` = `'9.20.0'`
|
|
1442
1593
|
|
|
1443
1594
|
Defined in: [index.ts:10](https://github.com/maiyunnet/kebab/blob/master/index.ts#L10)
|
|
1444
1595
|
|
|
@@ -123199,7 +123350,7 @@ lib/sql/classes/Sql.md
|
|
|
123199
123350
|
|
|
123200
123351
|
# Class: Sql
|
|
123201
123352
|
|
|
123202
|
-
Defined in: [lib/sql.ts:
|
|
123353
|
+
Defined in: [lib/sql.ts:46](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L46)
|
|
123203
123354
|
|
|
123204
123355
|
## Constructors
|
|
123205
123356
|
|
|
@@ -123207,7 +123358,7 @@ Defined in: [lib/sql.ts:43](https://github.com/maiyunnet/kebab/blob/master/lib/s
|
|
|
123207
123358
|
|
|
123208
123359
|
> **new Sql**(`opt`): `Sql`
|
|
123209
123360
|
|
|
123210
|
-
Defined in: [lib/sql.ts:
|
|
123361
|
+
Defined in: [lib/sql.ts:76](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L76)
|
|
123211
123362
|
|
|
123212
123363
|
#### Parameters
|
|
123213
123364
|
|
|
@@ -123249,7 +123400,7 @@ Defined in: [lib/sql.ts:73](https://github.com/maiyunnet/kebab/blob/master/lib/s
|
|
|
123249
123400
|
|
|
123250
123401
|
> **append**(`sql`): `this`
|
|
123251
123402
|
|
|
123252
|
-
Defined in: [lib/sql.ts:
|
|
123403
|
+
Defined in: [lib/sql.ts:1126](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L1126)
|
|
123253
123404
|
|
|
123254
123405
|
在 sql 最后追加字符串
|
|
123255
123406
|
|
|
@@ -123269,7 +123420,7 @@ Defined in: [lib/sql.ts:1057](https://github.com/maiyunnet/kebab/blob/master/lib
|
|
|
123269
123420
|
|
|
123270
123421
|
> **by**(`c`, `d?`): `this`
|
|
123271
123422
|
|
|
123272
|
-
Defined in: [lib/sql.ts:
|
|
123423
|
+
Defined in: [lib/sql.ts:813](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L813)
|
|
123273
123424
|
|
|
123274
123425
|
ORDER BY
|
|
123275
123426
|
|
|
@@ -123297,7 +123448,7 @@ ORDER BY
|
|
|
123297
123448
|
|
|
123298
123449
|
> **copy**(`f?`, `opt?`): `Sql`
|
|
123299
123450
|
|
|
123300
|
-
Defined in: [lib/sql.ts:
|
|
123451
|
+
Defined in: [lib/sql.ts:932](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L932)
|
|
123301
123452
|
|
|
123302
123453
|
创建一个本对象的一个新的 sql 对象拷贝
|
|
123303
123454
|
|
|
@@ -123311,6 +123462,18 @@ Defined in: [lib/sql.ts:877](https://github.com/maiyunnet/kebab/blob/master/lib/
|
|
|
123311
123462
|
|
|
123312
123463
|
##### opt?
|
|
123313
123464
|
|
|
123465
|
+
###### limit?
|
|
123466
|
+
|
|
123467
|
+
`false`
|
|
123468
|
+
|
|
123469
|
+
false 时移除本查询的 LIMIT/OFFSET,不修改子查询
|
|
123470
|
+
|
|
123471
|
+
###### order?
|
|
123472
|
+
|
|
123473
|
+
`false`
|
|
123474
|
+
|
|
123475
|
+
false 时移除本查询的排序,不修改子查询
|
|
123476
|
+
|
|
123314
123477
|
###### where?
|
|
123315
123478
|
|
|
123316
123479
|
`any`
|
|
@@ -123325,7 +123488,7 @@ Defined in: [lib/sql.ts:877](https://github.com/maiyunnet/kebab/blob/master/lib/
|
|
|
123325
123488
|
|
|
123326
123489
|
> **crossJoin**(`f`, `s?`, `suf?`, `pre?`): `this`
|
|
123327
123490
|
|
|
123328
|
-
Defined in: [lib/sql.ts:
|
|
123491
|
+
Defined in: [lib/sql.ts:532](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L532)
|
|
123329
123492
|
|
|
123330
123493
|
cross join 方法
|
|
123331
123494
|
|
|
@@ -123365,7 +123528,7 @@ MySQL 时为表前缀,PostgreSQL 时为 Schema 名,仅在 join 非默认前
|
|
|
123365
123528
|
|
|
123366
123529
|
> **delete**(`f`): `this`
|
|
123367
123530
|
|
|
123368
|
-
Defined in: [lib/sql.ts:
|
|
123531
|
+
Defined in: [lib/sql.ts:420](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L420)
|
|
123369
123532
|
|
|
123370
123533
|
'xx'
|
|
123371
123534
|
|
|
@@ -123387,7 +123550,7 @@ Defined in: [lib/sql.ts:416](https://github.com/maiyunnet/kebab/blob/master/lib/
|
|
|
123387
123550
|
|
|
123388
123551
|
> **field**(`str`, `pre?`, `suf?`): `string`
|
|
123389
123552
|
|
|
123390
|
-
Defined in: [lib/sql.ts:
|
|
123553
|
+
Defined in: [lib/sql.ts:1137](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L1137)
|
|
123391
123554
|
|
|
123392
123555
|
对字段进行包裹
|
|
123393
123556
|
|
|
@@ -123419,7 +123582,7 @@ MySQL 时为表前缀,PostgreSQL 时为 Schema 名,仅请在 field 表名时
|
|
|
123419
123582
|
|
|
123420
123583
|
> **format**(`sql?`, `data?`): `string`
|
|
123421
123584
|
|
|
123422
|
-
Defined in: [lib/sql.ts:
|
|
123585
|
+
Defined in: [lib/sql.ts:1116](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L1116)
|
|
123423
123586
|
|
|
123424
123587
|
获取带 data 的 sql 语句
|
|
123425
123588
|
|
|
@@ -123443,7 +123606,7 @@ Defined in: [lib/sql.ts:1047](https://github.com/maiyunnet/kebab/blob/master/lib
|
|
|
123443
123606
|
|
|
123444
123607
|
> **fullJoin**(`f`, `s?`, `suf?`, `pre?`): `this`
|
|
123445
123608
|
|
|
123446
|
-
Defined in: [lib/sql.ts:
|
|
123609
|
+
Defined in: [lib/sql.ts:521](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L521)
|
|
123447
123610
|
|
|
123448
123611
|
full join 方法
|
|
123449
123612
|
|
|
@@ -123483,7 +123646,7 @@ MySQL 时为表前缀,PostgreSQL 时为 Schema 名,仅在 join 非默认前
|
|
|
123483
123646
|
|
|
123484
123647
|
> **getData**(): [`DbValue`](../../../index/type-aliases/DbValue.md)[]
|
|
123485
123648
|
|
|
123486
|
-
Defined in: [lib/sql.ts:
|
|
123649
|
+
Defined in: [lib/sql.ts:1100](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L1100)
|
|
123487
123650
|
|
|
123488
123651
|
获取全部 data
|
|
123489
123652
|
|
|
@@ -123497,7 +123660,7 @@ Defined in: [lib/sql.ts:1031](https://github.com/maiyunnet/kebab/blob/master/lib
|
|
|
123497
123660
|
|
|
123498
123661
|
> **getPre**(): `string`
|
|
123499
123662
|
|
|
123500
|
-
Defined in: [lib/sql.ts:
|
|
123663
|
+
Defined in: [lib/sql.ts:1107](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L1107)
|
|
123501
123664
|
|
|
123502
123665
|
获取定义的 pre
|
|
123503
123666
|
|
|
@@ -123511,7 +123674,7 @@ Defined in: [lib/sql.ts:1038](https://github.com/maiyunnet/kebab/blob/master/lib
|
|
|
123511
123674
|
|
|
123512
123675
|
> **getSql**(): `string`
|
|
123513
123676
|
|
|
123514
|
-
Defined in: [lib/sql.ts:
|
|
123677
|
+
Defined in: [lib/sql.ts:1080](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L1080)
|
|
123515
123678
|
|
|
123516
123679
|
获取 sql 语句
|
|
123517
123680
|
|
|
@@ -123525,7 +123688,7 @@ Defined in: [lib/sql.ts:1011](https://github.com/maiyunnet/kebab/blob/master/lib
|
|
|
123525
123688
|
|
|
123526
123689
|
> **group**(`c`): `this`
|
|
123527
123690
|
|
|
123528
|
-
Defined in: [lib/sql.ts:
|
|
123691
|
+
Defined in: [lib/sql.ts:888](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L888)
|
|
123529
123692
|
|
|
123530
123693
|
GROUP BY
|
|
123531
123694
|
|
|
@@ -123547,7 +123710,7 @@ GROUP BY
|
|
|
123547
123710
|
|
|
123548
123711
|
> **having**(`s?`): `this`
|
|
123549
123712
|
|
|
123550
|
-
Defined in: [lib/sql.ts:
|
|
123713
|
+
Defined in: [lib/sql.ts:539](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L539)
|
|
123551
123714
|
|
|
123552
123715
|
having 后置筛选器,用法类似 where
|
|
123553
123716
|
|
|
@@ -123567,7 +123730,7 @@ having 后置筛选器,用法类似 where
|
|
|
123567
123730
|
|
|
123568
123731
|
> **hint**(`h`): `this`
|
|
123569
123732
|
|
|
123570
|
-
Defined in: [lib/sql.ts:
|
|
123733
|
+
Defined in: [lib/sql.ts:123](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L123)
|
|
123571
123734
|
|
|
123572
123735
|
设置 MySQL 优化器 Hint
|
|
123573
123736
|
会以 Optimizer Hint 注释语法注入到 SELECT 关键字后
|
|
@@ -123612,7 +123775,7 @@ INDEX(`t1` `idx_a`) JOIN_INDEX(`t2` `idx_b`)
|
|
|
123612
123775
|
|
|
123613
123776
|
> **innerJoin**(`f`, `s?`, `suf?`, `pre?`): `this`
|
|
123614
123777
|
|
|
123615
|
-
Defined in: [lib/sql.ts:
|
|
123778
|
+
Defined in: [lib/sql.ts:510](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L510)
|
|
123616
123779
|
|
|
123617
123780
|
inner join 方法
|
|
123618
123781
|
|
|
@@ -123652,7 +123815,7 @@ MySQL 时为表前缀,PostgreSQL 时为 Schema 名,仅在 join 非默认前
|
|
|
123652
123815
|
|
|
123653
123816
|
> **insert**(`table`, `ignore?`): `this`
|
|
123654
123817
|
|
|
123655
|
-
Defined in: [lib/sql.ts:
|
|
123818
|
+
Defined in: [lib/sql.ts:135](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L135)
|
|
123656
123819
|
|
|
123657
123820
|
插入数据前导
|
|
123658
123821
|
|
|
@@ -123680,7 +123843,7 @@ Defined in: [lib/sql.ts:131](https://github.com/maiyunnet/kebab/blob/master/lib/
|
|
|
123680
123843
|
|
|
123681
123844
|
> **join**(`f`, `s?`, `type?`, `suf?`, `pre?`): `this`
|
|
123682
123845
|
|
|
123683
|
-
Defined in: [lib/sql.ts:
|
|
123846
|
+
Defined in: [lib/sql.ts:462](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L462)
|
|
123684
123847
|
|
|
123685
123848
|
join 方法
|
|
123686
123849
|
|
|
@@ -123726,7 +123889,7 @@ MySQL 时为表前缀,PostgreSQL 时为 Schema 名,仅在 join 非默认前
|
|
|
123726
123889
|
|
|
123727
123890
|
> **leftJoin**(`f`, `s?`, `suf?`, `pre?`): `this`
|
|
123728
123891
|
|
|
123729
|
-
Defined in: [lib/sql.ts:
|
|
123892
|
+
Defined in: [lib/sql.ts:488](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L488)
|
|
123730
123893
|
|
|
123731
123894
|
left join 方法
|
|
123732
123895
|
|
|
@@ -123766,7 +123929,7 @@ MySQL 时为表前缀,PostgreSQL 时为 Schema 名,仅在 join 非默认前
|
|
|
123766
123929
|
|
|
123767
123930
|
> **limit**(`a`, `b?`): `this`
|
|
123768
123931
|
|
|
123769
|
-
Defined in: [lib/sql.ts:
|
|
123932
|
+
Defined in: [lib/sql.ts:908](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L908)
|
|
123770
123933
|
|
|
123771
123934
|
LIMIT(limit、offset, limit)
|
|
123772
123935
|
|
|
@@ -123794,7 +123957,7 @@ LIMIT(limit、offset, limit)
|
|
|
123794
123957
|
|
|
123795
123958
|
> **lock**(): `this`
|
|
123796
123959
|
|
|
123797
|
-
Defined in: [lib/sql.ts:
|
|
123960
|
+
Defined in: [lib/sql.ts:923](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L923)
|
|
123798
123961
|
|
|
123799
123962
|
追加消极锁,通常不建议使用
|
|
123800
123963
|
|
|
@@ -123808,7 +123971,7 @@ Defined in: [lib/sql.ts:868](https://github.com/maiyunnet/kebab/blob/master/lib/
|
|
|
123808
123971
|
|
|
123809
123972
|
> **rightJoin**(`f`, `s?`, `suf?`, `pre?`): `this`
|
|
123810
123973
|
|
|
123811
|
-
Defined in: [lib/sql.ts:
|
|
123974
|
+
Defined in: [lib/sql.ts:499](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L499)
|
|
123812
123975
|
|
|
123813
123976
|
right join 方法
|
|
123814
123977
|
|
|
@@ -123844,11 +124007,48 @@ MySQL 时为表前缀,PostgreSQL 时为 Schema 名,仅在 join 非默认前
|
|
|
123844
124007
|
|
|
123845
124008
|
***
|
|
123846
124009
|
|
|
124010
|
+
### seek()
|
|
124011
|
+
|
|
124012
|
+
> **seek**(`c`, `values?`, `d?`): `this`
|
|
124013
|
+
|
|
124014
|
+
Defined in: [lib/sql.ts:841](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L841)
|
|
124015
|
+
|
|
124016
|
+
按非空、同向排序字段定位游标并设置排序;字段组合须唯一且有匹配索引
|
|
124017
|
+
使用行比较,让 PostgreSQL 可以从复合索引边界开始扫描
|
|
124018
|
+
|
|
124019
|
+
#### Parameters
|
|
124020
|
+
|
|
124021
|
+
##### c
|
|
124022
|
+
|
|
124023
|
+
`string` \| `string`[]
|
|
124024
|
+
|
|
124025
|
+
排序字段,支持表别名;不支持表达式、GROUP BY 或 UNION
|
|
124026
|
+
|
|
124027
|
+
##### values?
|
|
124028
|
+
|
|
124029
|
+
[`TCursorValue`](../type-aliases/TCursorValue.md)[]
|
|
124030
|
+
|
|
124031
|
+
上一页末行的字段值,省略时读取首批
|
|
124032
|
+
|
|
124033
|
+
##### d?
|
|
124034
|
+
|
|
124035
|
+
`"DESC"` \| `"ASC"`
|
|
124036
|
+
|
|
124037
|
+
扫描方向;读取前一批时反转方向并在取回后反转列表
|
|
124038
|
+
|
|
124039
|
+
#### Returns
|
|
124040
|
+
|
|
124041
|
+
`this`
|
|
124042
|
+
|
|
124043
|
+
当前 SQL 对象
|
|
124044
|
+
|
|
124045
|
+
***
|
|
124046
|
+
|
|
123847
124047
|
### select()
|
|
123848
124048
|
|
|
123849
124049
|
> **select**(`c`, `f`): `this`
|
|
123850
124050
|
|
|
123851
|
-
Defined in: [lib/sql.ts:
|
|
124051
|
+
Defined in: [lib/sql.ts:307](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L307)
|
|
123852
124052
|
|
|
123853
124053
|
'*', 'xx'
|
|
123854
124054
|
|
|
@@ -123876,7 +124076,7 @@ Defined in: [lib/sql.ts:303](https://github.com/maiyunnet/kebab/blob/master/lib/
|
|
|
123876
124076
|
|
|
123877
124077
|
> **union**(`lsql`, `type?`): `this`
|
|
123878
124078
|
|
|
123879
|
-
Defined in: [lib/sql.ts:
|
|
124079
|
+
Defined in: [lib/sql.ts:432](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L432)
|
|
123880
124080
|
|
|
123881
124081
|
联查另一个 sql 对象
|
|
123882
124082
|
|
|
@@ -123904,7 +124104,7 @@ sql 对象
|
|
|
123904
124104
|
|
|
123905
124105
|
> **unionAll**(`lsql`): `this`
|
|
123906
124106
|
|
|
123907
|
-
Defined in: [lib/sql.ts:
|
|
124107
|
+
Defined in: [lib/sql.ts:450](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L450)
|
|
123908
124108
|
|
|
123909
124109
|
所有联查另一个 sql 对象
|
|
123910
124110
|
|
|
@@ -123926,7 +124126,7 @@ sql 对象
|
|
|
123926
124126
|
|
|
123927
124127
|
> **update**(`f`, `s`): `this`
|
|
123928
124128
|
|
|
123929
|
-
Defined in: [lib/sql.ts:
|
|
124129
|
+
Defined in: [lib/sql.ts:348](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L348)
|
|
123930
124130
|
|
|
123931
124131
|
UPDATE SQL 方法
|
|
123932
124132
|
|
|
@@ -123954,7 +124154,7 @@ UPDATE SQL 方法
|
|
|
123954
124154
|
|
|
123955
124155
|
> **updateByValues**(`table`, `key`, `cols`, `rows`): `this`
|
|
123956
124156
|
|
|
123957
|
-
Defined in: [lib/sql.ts:
|
|
124157
|
+
Defined in: [lib/sql.ts:251](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L251)
|
|
123958
124158
|
|
|
123959
124159
|
批量 UPDATE,以子查询作为数据源,纯更新语义(不会插入新行)
|
|
123960
124160
|
MySQL: UPDATE t INNER JOIN (SELECT col AS alias ... UNION ALL SELECT ...) AS tmp ON t.key=tmp.key SET t.c=tmp.c
|
|
@@ -123997,7 +124197,7 @@ PostgreSQL: UPDATE t SET c=tmp.c FROM (VALUES (typed nulls), ($1,...)) AS tmp(co
|
|
|
123997
124197
|
|
|
123998
124198
|
> **upsert**(`data`, `conflict?`): `this`
|
|
123999
124199
|
|
|
124000
|
-
Defined in: [lib/sql.ts:
|
|
124200
|
+
Defined in: [lib/sql.ts:212](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L212)
|
|
124001
124201
|
|
|
124002
124202
|
如果存在则更新不存在则插入(UPSERT)
|
|
124003
124203
|
|
|
@@ -124025,7 +124225,7 @@ Defined in: [lib/sql.ts:208](https://github.com/maiyunnet/kebab/blob/master/lib/
|
|
|
124025
124225
|
|
|
124026
124226
|
> **values**(`cs`, `vs?`): `this`
|
|
124027
124227
|
|
|
124028
|
-
Defined in: [lib/sql.ts:
|
|
124228
|
+
Defined in: [lib/sql.ts:154](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L154)
|
|
124029
124229
|
|
|
124030
124230
|
实际插入数据的数据
|
|
124031
124231
|
|
|
@@ -124053,7 +124253,7 @@ Defined in: [lib/sql.ts:150](https://github.com/maiyunnet/kebab/blob/master/lib/
|
|
|
124053
124253
|
|
|
124054
124254
|
> **where**(`s`): `this`
|
|
124055
124255
|
|
|
124056
|
-
Defined in: [lib/sql.ts:
|
|
124256
|
+
Defined in: [lib/sql.ts:572](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L572)
|
|
124057
124257
|
|
|
124058
124258
|
筛选器
|
|
124059
124259
|
标量相等:'city': 'bj', 'type': '2'
|
|
@@ -124087,7 +124287,7 @@ lib/sql/enumerations/EJSON.md
|
|
|
124087
124287
|
|
|
124088
124288
|
# Enumeration: EJSON
|
|
124089
124289
|
|
|
124090
|
-
Defined in: [lib/sql.ts:
|
|
124290
|
+
Defined in: [lib/sql.ts:25](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L25)
|
|
124091
124291
|
|
|
124092
124292
|
JSON 查询操作符
|
|
124093
124293
|
|
|
@@ -124097,7 +124297,7 @@ JSON 查询操作符
|
|
|
124097
124297
|
|
|
124098
124298
|
> **CONTAINED\_BY**: `"json_in"`
|
|
124099
124299
|
|
|
124100
|
-
Defined in: [lib/sql.ts:
|
|
124300
|
+
Defined in: [lib/sql.ts:29](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L29)
|
|
124101
124301
|
|
|
124102
124302
|
被包含值 (MySQL: JSON_CONTAINS, PG: <@)
|
|
124103
124303
|
|
|
@@ -124107,7 +124307,7 @@ Defined in: [lib/sql.ts:26](https://github.com/maiyunnet/kebab/blob/master/lib/s
|
|
|
124107
124307
|
|
|
124108
124308
|
> **CONTAINS**: `"json"`
|
|
124109
124309
|
|
|
124110
|
-
Defined in: [lib/sql.ts:
|
|
124310
|
+
Defined in: [lib/sql.ts:27](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L27)
|
|
124111
124311
|
|
|
124112
124312
|
包含值 (MySQL: JSON_CONTAINS, PG: @>)
|
|
124113
124313
|
|
|
@@ -124117,7 +124317,7 @@ Defined in: [lib/sql.ts:24](https://github.com/maiyunnet/kebab/blob/master/lib/s
|
|
|
124117
124317
|
|
|
124118
124318
|
> **HAS\_ALL\_KEYS**: `"json_all"`
|
|
124119
124319
|
|
|
124120
|
-
Defined in: [lib/sql.ts:
|
|
124320
|
+
Defined in: [lib/sql.ts:35](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L35)
|
|
124121
124321
|
|
|
124122
124322
|
存在所有 Key 不含值 (MySQL: JSON_CONTAINS_PATH all, PG: ?&)
|
|
124123
124323
|
|
|
@@ -124127,7 +124327,7 @@ Defined in: [lib/sql.ts:32](https://github.com/maiyunnet/kebab/blob/master/lib/s
|
|
|
124127
124327
|
|
|
124128
124328
|
> **HAS\_ANY\_KEYS**: `"json_any"`
|
|
124129
124329
|
|
|
124130
|
-
Defined in: [lib/sql.ts:
|
|
124330
|
+
Defined in: [lib/sql.ts:33](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L33)
|
|
124131
124331
|
|
|
124132
124332
|
存在任意 Key 不含值 (MySQL: JSON_CONTAINS_PATH one, PG: ?|)
|
|
124133
124333
|
|
|
@@ -124137,7 +124337,7 @@ Defined in: [lib/sql.ts:30](https://github.com/maiyunnet/kebab/blob/master/lib/s
|
|
|
124137
124337
|
|
|
124138
124338
|
> **HAS\_KEY**: `"json_key"`
|
|
124139
124339
|
|
|
124140
|
-
Defined in: [lib/sql.ts:
|
|
124340
|
+
Defined in: [lib/sql.ts:31](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L31)
|
|
124141
124341
|
|
|
124142
124342
|
存在 Key 不含值 (MySQL: JSON_CONTAINS_PATH one, PG: ?)
|
|
124143
124343
|
|
|
@@ -124147,7 +124347,7 @@ Defined in: [lib/sql.ts:28](https://github.com/maiyunnet/kebab/blob/master/lib/s
|
|
|
124147
124347
|
|
|
124148
124348
|
> **OVERLAPS**: `"json_overlaps"`
|
|
124149
124349
|
|
|
124150
|
-
Defined in: [lib/sql.ts:
|
|
124350
|
+
Defined in: [lib/sql.ts:37](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L37)
|
|
124151
124351
|
|
|
124152
124352
|
简单数组重叠 (MySQL: JSON_OVERLAPS, PG: &&)
|
|
124153
124353
|
|
|
@@ -124195,7 +124395,7 @@ lib/sql/functions/aoMix.md
|
|
|
124195
124395
|
|
|
124196
124396
|
> **aoMix**(`arr`): `Record`\<`string`, `string` \| `number` \| [`Json`](../../../index/type-aliases/Json.md)\>
|
|
124197
124397
|
|
|
124198
|
-
Defined in: [lib/sql.ts:
|
|
124398
|
+
Defined in: [lib/sql.ts:1486](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L1486)
|
|
124199
124399
|
|
|
124200
124400
|
将数组兑换为组合的对象(Array/Object mix)
|
|
124201
124401
|
|
|
@@ -124224,7 +124424,7 @@ lib/sql/functions/column.md
|
|
|
124224
124424
|
|
|
124225
124425
|
> **column**(`field`): `object`
|
|
124226
124426
|
|
|
124227
|
-
Defined in: [lib/sql.ts:
|
|
124427
|
+
Defined in: [lib/sql.ts:1507](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L1507)
|
|
124228
124428
|
|
|
124229
124429
|
创建字段对象
|
|
124230
124430
|
|
|
@@ -124263,7 +124463,7 @@ lib/sql/functions/format.md
|
|
|
124263
124463
|
|
|
124264
124464
|
> **format**(`sql`, `data`, `service?`): `string`
|
|
124265
124465
|
|
|
124266
|
-
Defined in: [lib/sql.ts:
|
|
124466
|
+
Defined in: [lib/sql.ts:1447](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L1447)
|
|
124267
124467
|
|
|
124268
124468
|
返回代入后的完整 SQL 字符串,这并不安全不能直接执行,只是用来调试打印 sql 语句
|
|
124269
124469
|
|
|
@@ -124304,7 +124504,7 @@ lib/sql/functions/get.md
|
|
|
124304
124504
|
|
|
124305
124505
|
> **get**(`opt`): [`Sql`](../classes/Sql.md)
|
|
124306
124506
|
|
|
124307
|
-
Defined in: [lib/sql.ts:
|
|
124507
|
+
Defined in: [lib/sql.ts:1419](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L1419)
|
|
124308
124508
|
|
|
124309
124509
|
创建 sql 对象
|
|
124310
124510
|
|
|
@@ -124357,7 +124557,7 @@ lib/sql/functions/json.md
|
|
|
124357
124557
|
|
|
124358
124558
|
> **json**\<`T`\>(`obj`): `T`
|
|
124359
124559
|
|
|
124360
|
-
Defined in: [lib/sql.ts:
|
|
124560
|
+
Defined in: [lib/sql.ts:1546](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L1546)
|
|
124361
124561
|
|
|
124362
124562
|
标记需要写入 JSON/jsonb 字段的值;实际序列化延迟到数据库边界
|
|
124363
124563
|
|
|
@@ -124394,7 +124594,7 @@ lib/sql/functions/value.md
|
|
|
124394
124594
|
|
|
124395
124595
|
> **value**(`val`): `object`
|
|
124396
124596
|
|
|
124397
|
-
Defined in: [lib/sql.ts:
|
|
124597
|
+
Defined in: [lib/sql.ts:1526](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L1526)
|
|
124398
124598
|
|
|
124399
124599
|
创建字面量值对象,用于 where 条件中 v[0] 需要是值而非字段名的场景
|
|
124400
124600
|
例:[value('hello'), 'IN', column('tags')]
|
|
@@ -124441,6 +124641,10 @@ lib/sql/index.md
|
|
|
124441
124641
|
|
|
124442
124642
|
- [Sql](classes/Sql.md)
|
|
124443
124643
|
|
|
124644
|
+
## Type Aliases
|
|
124645
|
+
|
|
124646
|
+
- [TCursorValue](type-aliases/TCursorValue.md)
|
|
124647
|
+
|
|
124444
124648
|
## Functions
|
|
124445
124649
|
|
|
124446
124650
|
- [aoMix](functions/aoMix.md)
|
|
@@ -124450,6 +124654,23 @@ lib/sql/index.md
|
|
|
124450
124654
|
- [json](functions/json.md)
|
|
124451
124655
|
- [value](functions/value.md)
|
|
124452
124656
|
|
|
124657
|
+
lib/sql/type-aliases/TCursorValue.md
|
|
124658
|
+
---
|
|
124659
|
+
|
|
124660
|
+
[**Documents for @maiyunnet/kebab**](../../../index.md)
|
|
124661
|
+
|
|
124662
|
+
***
|
|
124663
|
+
|
|
124664
|
+
[Documents for @maiyunnet/kebab](../../../index.md) / [lib/sql](../index.md) / TCursorValue
|
|
124665
|
+
|
|
124666
|
+
# Type Alias: TCursorValue
|
|
124667
|
+
|
|
124668
|
+
> **TCursorValue** = `string` \| `number`
|
|
124669
|
+
|
|
124670
|
+
Defined in: [lib/sql.ts:22](https://github.com/maiyunnet/kebab/blob/master/lib/sql.ts#L22)
|
|
124671
|
+
|
|
124672
|
+
非空游标值;大整数和日期请使用数据库可比较的字符串
|
|
124673
|
+
|
|
124453
124674
|
lib/sql/value/functions/isJson.md
|
|
124454
124675
|
---
|
|
124455
124676
|
|
|
@@ -125752,6 +125973,43 @@ lib/ssh/shell/index.md
|
|
|
125752
125973
|
|
|
125753
125974
|
- [Connection](classes/Connection.md)
|
|
125754
125975
|
|
|
125976
|
+
lib/text/functions/compareVersion.md
|
|
125977
|
+
---
|
|
125978
|
+
|
|
125979
|
+
[**Documents for @maiyunnet/kebab**](../../../index.md)
|
|
125980
|
+
|
|
125981
|
+
***
|
|
125982
|
+
|
|
125983
|
+
[Documents for @maiyunnet/kebab](../../../index.md) / [lib/text](../index.md) / compareVersion
|
|
125984
|
+
|
|
125985
|
+
# Function: compareVersion()
|
|
125986
|
+
|
|
125987
|
+
> **compareVersion**(`version`, `target`): `0` \| `1` \| `-1` \| `null`
|
|
125988
|
+
|
|
125989
|
+
Defined in: [lib/text.ts:35](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L35)
|
|
125990
|
+
|
|
125991
|
+
逐段比较三段正式发行版本 X.Y.Z,不按字符串或浮点数比较
|
|
125992
|
+
|
|
125993
|
+
## Parameters
|
|
125994
|
+
|
|
125995
|
+
### version
|
|
125996
|
+
|
|
125997
|
+
`unknown`
|
|
125998
|
+
|
|
125999
|
+
待比较的版本
|
|
126000
|
+
|
|
126001
|
+
### target
|
|
126002
|
+
|
|
126003
|
+
`unknown`
|
|
126004
|
+
|
|
126005
|
+
目标版本
|
|
126006
|
+
|
|
126007
|
+
## Returns
|
|
126008
|
+
|
|
126009
|
+
`0` \| `1` \| `-1` \| `null`
|
|
126010
|
+
|
|
126011
|
+
小于返回 -1,等于返回 0,大于返回 1;任一版本无效时返回 null
|
|
126012
|
+
|
|
125755
126013
|
lib/text/functions/csvescape.md
|
|
125756
126014
|
---
|
|
125757
126015
|
|
|
@@ -125765,7 +126023,7 @@ lib/text/functions/csvescape.md
|
|
|
125765
126023
|
|
|
125766
126024
|
> **csvescape**(`str`): `string`
|
|
125767
126025
|
|
|
125768
|
-
Defined in: [lib/text.ts:
|
|
126026
|
+
Defined in: [lib/text.ts:585](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L585)
|
|
125769
126027
|
|
|
125770
126028
|
CSV 特殊字符转换为实体字符
|
|
125771
126029
|
|
|
@@ -125792,7 +126050,7 @@ lib/text/functions/getFileExt.md
|
|
|
125792
126050
|
|
|
125793
126051
|
> **getFileExt**(`path`): `string`
|
|
125794
126052
|
|
|
125795
|
-
Defined in: [lib/text.ts:
|
|
126053
|
+
Defined in: [lib/text.ts:626](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L626)
|
|
125796
126054
|
|
|
125797
126055
|
获取文件后缀
|
|
125798
126056
|
|
|
@@ -125821,7 +126079,7 @@ lib/text/functions/getFileNameExt.md
|
|
|
125821
126079
|
|
|
125822
126080
|
> **getFileNameExt**(`path`): `object`
|
|
125823
126081
|
|
|
125824
|
-
Defined in: [lib/text.ts:
|
|
126082
|
+
Defined in: [lib/text.ts:639](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L639)
|
|
125825
126083
|
|
|
125826
126084
|
获取文件名和后缀
|
|
125827
126085
|
|
|
@@ -125858,7 +126116,7 @@ lib/text/functions/getFilename.md
|
|
|
125858
126116
|
|
|
125859
126117
|
> **getFilename**(`path`, `ext?`): `string`
|
|
125860
126118
|
|
|
125861
|
-
Defined in: [lib/text.ts:
|
|
126119
|
+
Defined in: [lib/text.ts:606](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L606)
|
|
125862
126120
|
|
|
125863
126121
|
获取文件名
|
|
125864
126122
|
|
|
@@ -125893,7 +126151,7 @@ lib/text/functions/htmlescape.md
|
|
|
125893
126151
|
|
|
125894
126152
|
> **htmlescape**(`html`): `string`
|
|
125895
126153
|
|
|
125896
|
-
Defined in: [lib/text.ts:
|
|
126154
|
+
Defined in: [lib/text.ts:571](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L571)
|
|
125897
126155
|
|
|
125898
126156
|
HTML 特殊字符转换为实体字符
|
|
125899
126157
|
|
|
@@ -125922,7 +126180,7 @@ lib/text/functions/int2str.md
|
|
|
125922
126180
|
|
|
125923
126181
|
> **int2str**(`int`, `digits?`, `decimal?`): `string`
|
|
125924
126182
|
|
|
125925
|
-
Defined in: [lib/text.ts:
|
|
126183
|
+
Defined in: [lib/text.ts:863](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L863)
|
|
125926
126184
|
|
|
125927
126185
|
为解决精度问题,将整数转换为小数字符串
|
|
125928
126186
|
以下几个示例都是当 digits 为 3、decimal 为 2 时
|
|
@@ -125968,7 +126226,7 @@ lib/text/functions/isAscii.md
|
|
|
125968
126226
|
|
|
125969
126227
|
> **isAscii**(`text`): `boolean`
|
|
125970
126228
|
|
|
125971
|
-
Defined in: [lib/text.ts:
|
|
126229
|
+
Defined in: [lib/text.ts:329](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L329)
|
|
125972
126230
|
|
|
125973
126231
|
判断是否在 ascii 字符集内,仅可输入部分
|
|
125974
126232
|
|
|
@@ -125997,7 +126255,7 @@ lib/text/functions/isDomain.md
|
|
|
125997
126255
|
|
|
125998
126256
|
> **isDomain**(`domain`): `boolean`
|
|
125999
126257
|
|
|
126000
|
-
Defined in: [lib/text.ts:
|
|
126258
|
+
Defined in: [lib/text.ts:318](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L318)
|
|
126001
126259
|
|
|
126002
126260
|
判断是否是域名
|
|
126003
126261
|
|
|
@@ -126028,7 +126286,7 @@ lib/text/functions/isEMail.md
|
|
|
126028
126286
|
|
|
126029
126287
|
> **isEMail**(`email`): `boolean`
|
|
126030
126288
|
|
|
126031
|
-
Defined in: [lib/text.ts:
|
|
126289
|
+
Defined in: [lib/text.ts:291](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L291)
|
|
126032
126290
|
|
|
126033
126291
|
是否是邮件地址
|
|
126034
126292
|
|
|
@@ -126055,7 +126313,7 @@ lib/text/functions/isFalsy.md
|
|
|
126055
126313
|
|
|
126056
126314
|
> **isFalsy**(`val`): `val is TFalsy`
|
|
126057
126315
|
|
|
126058
|
-
Defined in: [lib/text.ts:
|
|
126316
|
+
Defined in: [lib/text.ts:814](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L814)
|
|
126059
126317
|
|
|
126060
126318
|
判断一个值是否是虚假的(为 null/undefined/空字符串/false/0)
|
|
126061
126319
|
|
|
@@ -126084,7 +126342,7 @@ lib/text/functions/isIdCardCN.md
|
|
|
126084
126342
|
|
|
126085
126343
|
> **isIdCardCN**(`idcard`): `boolean`
|
|
126086
126344
|
|
|
126087
|
-
Defined in: [lib/text.ts:
|
|
126345
|
+
Defined in: [lib/text.ts:441](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L441)
|
|
126088
126346
|
|
|
126089
126347
|
是否是中国大陆身份证号码
|
|
126090
126348
|
|
|
@@ -126113,7 +126371,7 @@ lib/text/functions/isIPv4.md
|
|
|
126113
126371
|
|
|
126114
126372
|
> **isIPv4**(`ip`): `boolean`
|
|
126115
126373
|
|
|
126116
|
-
Defined in: [lib/text.ts:
|
|
126374
|
+
Defined in: [lib/text.ts:299](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L299)
|
|
126117
126375
|
|
|
126118
126376
|
是否是 IPv4(基于 Node 原生 net.isIP,严格校验)
|
|
126119
126377
|
|
|
@@ -126140,7 +126398,7 @@ lib/text/functions/isIPv6.md
|
|
|
126140
126398
|
|
|
126141
126399
|
> **isIPv6**(`ip`): `boolean`
|
|
126142
126400
|
|
|
126143
|
-
Defined in: [lib/text.ts:
|
|
126401
|
+
Defined in: [lib/text.ts:307](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L307)
|
|
126144
126402
|
|
|
126145
126403
|
是否是 IPv6(基于 Node 原生 net.isIP,严格校验)
|
|
126146
126404
|
|
|
@@ -126167,7 +126425,7 @@ lib/text/functions/isPhoneCN.md
|
|
|
126167
126425
|
|
|
126168
126426
|
> **isPhoneCN**(`p`): `boolean`
|
|
126169
126427
|
|
|
126170
|
-
Defined in: [lib/text.ts:
|
|
126428
|
+
Defined in: [lib/text.ts:433](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L433)
|
|
126171
126429
|
|
|
126172
126430
|
判断手机号是否是 11 位,不做真实性校验
|
|
126173
126431
|
|
|
@@ -126196,7 +126454,7 @@ lib/text/functions/isRealPath.md
|
|
|
126196
126454
|
|
|
126197
126455
|
> **isRealPath**(`path`): `boolean`
|
|
126198
126456
|
|
|
126199
|
-
Defined in: [lib/text.ts:
|
|
126457
|
+
Defined in: [lib/text.ts:593](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L593)
|
|
126200
126458
|
|
|
126201
126459
|
判断是否是绝对路径,是返回 true,相对路径返回 false
|
|
126202
126460
|
|
|
@@ -126225,7 +126483,7 @@ lib/text/functions/isSameOrigin.md
|
|
|
126225
126483
|
|
|
126226
126484
|
> **isSameOrigin**(`from`, `to`): `boolean`
|
|
126227
126485
|
|
|
126228
|
-
Defined in: [lib/text.ts:
|
|
126486
|
+
Defined in: [lib/text.ts:172](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L172)
|
|
126229
126487
|
|
|
126230
126488
|
判断两个 URL 是否属于同源地址
|
|
126231
126489
|
|
|
@@ -126260,7 +126518,7 @@ lib/text/functions/isTruthy.md
|
|
|
126260
126518
|
|
|
126261
126519
|
> **isTruthy**\<`T`\>(`val`): `val is Exclude<T, TFalsy>`
|
|
126262
126520
|
|
|
126263
|
-
Defined in: [lib/text.ts:
|
|
126521
|
+
Defined in: [lib/text.ts:822](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L822)
|
|
126264
126522
|
|
|
126265
126523
|
判断一个值是否是真实的(不为 null/undefined/空字符串/false/0)
|
|
126266
126524
|
|
|
@@ -126295,7 +126553,7 @@ lib/text/functions/logicalOr.md
|
|
|
126295
126553
|
|
|
126296
126554
|
> **logicalOr**\<`T`, `T2`\>(`v1`, `v2`): `T` *extends* [`TFalsy`](../type-aliases/TFalsy.md) ? `T2` : `T`
|
|
126297
126555
|
|
|
126298
|
-
Defined in: [lib/text.ts:
|
|
126556
|
+
Defined in: [lib/text.ts:831](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L831)
|
|
126299
126557
|
|
|
126300
126558
|
类似 || 运算符的效果
|
|
126301
126559
|
|
|
@@ -126340,7 +126598,7 @@ lib/text/functions/match.md
|
|
|
126340
126598
|
|
|
126341
126599
|
> **match**(`str`, `regs`): `boolean`
|
|
126342
126600
|
|
|
126343
|
-
Defined in: [lib/text.ts:
|
|
126601
|
+
Defined in: [lib/text.ts:418](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L418)
|
|
126344
126602
|
|
|
126345
126603
|
传入正则进行匹配 str 是否有一项满足
|
|
126346
126604
|
|
|
@@ -126375,7 +126633,7 @@ lib/text/functions/nlReplace.md
|
|
|
126375
126633
|
|
|
126376
126634
|
> **nlReplace**(`str`, `to?`): `string`
|
|
126377
126635
|
|
|
126378
|
-
Defined in: [lib/text.ts:
|
|
126636
|
+
Defined in: [lib/text.ts:338](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L338)
|
|
126379
126637
|
|
|
126380
126638
|
换行替换为别的
|
|
126381
126639
|
|
|
@@ -126410,7 +126668,7 @@ lib/text/functions/parseDomain.md
|
|
|
126410
126668
|
|
|
126411
126669
|
> **parseDomain**(`domain`): `Promise`\<[`IDomain`](../interfaces/IDomain.md)\>
|
|
126412
126670
|
|
|
126413
|
-
Defined in: [lib/text.ts:
|
|
126671
|
+
Defined in: [lib/text.ts:361](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L361)
|
|
126414
126672
|
|
|
126415
126673
|
解析域名并获取 tld/sld/domain/sub
|
|
126416
126674
|
|
|
@@ -126439,7 +126697,7 @@ lib/text/functions/parseHost.md
|
|
|
126439
126697
|
|
|
126440
126698
|
> **parseHost**(`host`): `object`
|
|
126441
126699
|
|
|
126442
|
-
Defined in: [lib/text.ts:
|
|
126700
|
+
Defined in: [lib/text.ts:68](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L68)
|
|
126443
126701
|
|
|
126444
126702
|
解析主机名和端口号
|
|
126445
126703
|
|
|
@@ -126480,7 +126738,7 @@ lib/text/functions/parseJson.md
|
|
|
126480
126738
|
|
|
126481
126739
|
> **parseJson**\<`T`\>(`str`): `false` \| `T`
|
|
126482
126740
|
|
|
126483
|
-
Defined in: [lib/text.ts:
|
|
126741
|
+
Defined in: [lib/text.ts:701](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L701)
|
|
126484
126742
|
|
|
126485
126743
|
将字符串解析为对象,返回 false 代表解析失败,支持 BigInt
|
|
126486
126744
|
|
|
@@ -126515,7 +126773,7 @@ lib/text/functions/parseUrl.md
|
|
|
126515
126773
|
|
|
126516
126774
|
> **parseUrl**(`url`): [`IUrlParse`](../../../index/interfaces/IUrlParse.md)
|
|
126517
126775
|
|
|
126518
|
-
Defined in: [lib/text.ts:
|
|
126776
|
+
Defined in: [lib/text.ts:94](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L94)
|
|
126519
126777
|
|
|
126520
126778
|
格式化一段 URL
|
|
126521
126779
|
|
|
@@ -126529,6 +126787,37 @@ Defined in: [lib/text.ts:56](https://github.com/maiyunnet/kebab/blob/master/lib/
|
|
|
126529
126787
|
|
|
126530
126788
|
[`IUrlParse`](../../../index/interfaces/IUrlParse.md)
|
|
126531
126789
|
|
|
126790
|
+
lib/text/functions/parseVersion.md
|
|
126791
|
+
---
|
|
126792
|
+
|
|
126793
|
+
[**Documents for @maiyunnet/kebab**](../../../index.md)
|
|
126794
|
+
|
|
126795
|
+
***
|
|
126796
|
+
|
|
126797
|
+
[Documents for @maiyunnet/kebab](../../../index.md) / [lib/text](../index.md) / parseVersion
|
|
126798
|
+
|
|
126799
|
+
# Function: parseVersion()
|
|
126800
|
+
|
|
126801
|
+
> **parseVersion**(`value`): \[`number`, `number`, `number`\] \| `null`
|
|
126802
|
+
|
|
126803
|
+
Defined in: [lib/text.ts:16](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L16)
|
|
126804
|
+
|
|
126805
|
+
解析三段正式发行版本 X.Y.Z,不接受前导零、预发行和构建后缀
|
|
126806
|
+
|
|
126807
|
+
## Parameters
|
|
126808
|
+
|
|
126809
|
+
### value
|
|
126810
|
+
|
|
126811
|
+
`unknown`
|
|
126812
|
+
|
|
126813
|
+
待解析的版本
|
|
126814
|
+
|
|
126815
|
+
## Returns
|
|
126816
|
+
|
|
126817
|
+
\[`number`, `number`, `number`\] \| `null`
|
|
126818
|
+
|
|
126819
|
+
三段安全整数,无效时返回 null
|
|
126820
|
+
|
|
126532
126821
|
lib/text/functions/queryParse.md
|
|
126533
126822
|
---
|
|
126534
126823
|
|
|
@@ -126542,7 +126831,7 @@ lib/text/functions/queryParse.md
|
|
|
126542
126831
|
|
|
126543
126832
|
> **queryParse**(`query`): `Record`\<`string`, `string` \| `string`[]\>
|
|
126544
126833
|
|
|
126545
|
-
Defined in: [lib/text.ts:
|
|
126834
|
+
Defined in: [lib/text.ts:518](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L518)
|
|
126546
126835
|
|
|
126547
126836
|
将 query string 转换为对象
|
|
126548
126837
|
|
|
@@ -126573,7 +126862,7 @@ lib/text/functions/queryStringify.md
|
|
|
126573
126862
|
|
|
126574
126863
|
> **queryStringify**(`query`, `encode?`): `string`
|
|
126575
126864
|
|
|
126576
|
-
Defined in: [lib/text.ts:
|
|
126865
|
+
Defined in: [lib/text.ts:469](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L469)
|
|
126577
126866
|
|
|
126578
126867
|
将对象转换为 query string
|
|
126579
126868
|
|
|
@@ -126599,7 +126888,7 @@ Defined in: [lib/text.ts:431](https://github.com/maiyunnet/kebab/blob/master/lib
|
|
|
126599
126888
|
|
|
126600
126889
|
> **queryStringify**(`query`, `options`): `string`
|
|
126601
126890
|
|
|
126602
|
-
Defined in: [lib/text.ts:
|
|
126891
|
+
Defined in: [lib/text.ts:475](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L475)
|
|
126603
126892
|
|
|
126604
126893
|
将对象转换为 query string
|
|
126605
126894
|
|
|
@@ -126644,7 +126933,7 @@ lib/text/functions/sizeFormat.md
|
|
|
126644
126933
|
|
|
126645
126934
|
> **sizeFormat**(`size`, `spliter?`): `string`
|
|
126646
126935
|
|
|
126647
|
-
Defined in: [lib/text.ts:
|
|
126936
|
+
Defined in: [lib/text.ts:54](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L54)
|
|
126648
126937
|
|
|
126649
126938
|
将文件大小格式化为带单位的字符串
|
|
126650
126939
|
|
|
@@ -126679,7 +126968,7 @@ lib/text/functions/str2int.md
|
|
|
126679
126968
|
|
|
126680
126969
|
> **str2int**(`str`, `digits?`): `number`
|
|
126681
126970
|
|
|
126682
|
-
Defined in: [lib/text.ts:
|
|
126971
|
+
Defined in: [lib/text.ts:845](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L845)
|
|
126683
126972
|
|
|
126684
126973
|
为解决精度问题,将字符串数字转换为整数显示
|
|
126685
126974
|
以下几个示例都是当 digits 为 2 时
|
|
@@ -126719,7 +127008,7 @@ lib/text/functions/stringifyBuffer.md
|
|
|
126719
127008
|
|
|
126720
127009
|
> **stringifyBuffer**(`buf`): `string`
|
|
126721
127010
|
|
|
126722
|
-
Defined in: [lib/text.ts:
|
|
127011
|
+
Defined in: [lib/text.ts:768](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L768)
|
|
126723
127012
|
|
|
126724
127013
|
输出文本格式的 buffer
|
|
126725
127014
|
|
|
@@ -126748,7 +127037,7 @@ lib/text/functions/stringifyError.md
|
|
|
126748
127037
|
|
|
126749
127038
|
> **stringifyError**(`error`): `string`
|
|
126750
127039
|
|
|
126751
|
-
Defined in: [lib/text.ts:
|
|
127040
|
+
Defined in: [lib/text.ts:745](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L745)
|
|
126752
127041
|
|
|
126753
127042
|
将未知异常转换为适合单行日志的文本,Error 优先返回完整堆栈
|
|
126754
127043
|
|
|
@@ -126779,7 +127068,7 @@ lib/text/functions/stringifyJson.md
|
|
|
126779
127068
|
|
|
126780
127069
|
> **stringifyJson**(`obj`, `space?`): `string`
|
|
126781
127070
|
|
|
126782
|
-
Defined in: [lib/text.ts:
|
|
127071
|
+
Defined in: [lib/text.ts:731](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L731)
|
|
126783
127072
|
|
|
126784
127073
|
将对象转换为 json 字符串,返回 false 代表解析失败,支持 BigInt
|
|
126785
127074
|
|
|
@@ -126814,7 +127103,7 @@ lib/text/functions/stringifyResult.md
|
|
|
126814
127103
|
|
|
126815
127104
|
> **stringifyResult**(`rtn`): `string`
|
|
126816
127105
|
|
|
126817
|
-
Defined in: [lib/text.ts:
|
|
127106
|
+
Defined in: [lib/text.ts:661](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L661)
|
|
126818
127107
|
|
|
126819
127108
|
将普通的返回 JSON 对象序列化为字符串
|
|
126820
127109
|
|
|
@@ -126843,7 +127132,7 @@ lib/text/functions/trimJson.md
|
|
|
126843
127132
|
|
|
126844
127133
|
> **trimJson**(`json`): `any`
|
|
126845
127134
|
|
|
126846
|
-
Defined in: [lib/text.ts:
|
|
127135
|
+
Defined in: [lib/text.ts:776](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L776)
|
|
126847
127136
|
|
|
126848
127137
|
递归删除 json 中的字符串首尾空格,会返回一个新的对象
|
|
126849
127138
|
|
|
@@ -126870,7 +127159,7 @@ lib/text/functions/urlAtom.md
|
|
|
126870
127159
|
|
|
126871
127160
|
> **urlAtom**(`url`): `string`
|
|
126872
127161
|
|
|
126873
|
-
Defined in: [lib/text.ts:
|
|
127162
|
+
Defined in: [lib/text.ts:272](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L272)
|
|
126874
127163
|
|
|
126875
127164
|
将路径中的 ../ ./ 都按规范妥善处理
|
|
126876
127165
|
|
|
@@ -126899,7 +127188,7 @@ lib/text/functions/urlResolve.md
|
|
|
126899
127188
|
|
|
126900
127189
|
> **urlResolve**(`from`, `to`, `limit?`): `string`
|
|
126901
127190
|
|
|
126902
|
-
Defined in: [lib/text.ts:
|
|
127191
|
+
Defined in: [lib/text.ts:206](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L206)
|
|
126903
127192
|
|
|
126904
127193
|
将相对路径根据基准路径进行转换
|
|
126905
127194
|
|
|
@@ -126954,6 +127243,7 @@ lib/text/index.md
|
|
|
126954
127243
|
|
|
126955
127244
|
## Functions
|
|
126956
127245
|
|
|
127246
|
+
- [compareVersion](functions/compareVersion.md)
|
|
126957
127247
|
- [csvescape](functions/csvescape.md)
|
|
126958
127248
|
- [getFileExt](functions/getFileExt.md)
|
|
126959
127249
|
- [getFilename](functions/getFilename.md)
|
|
@@ -126978,6 +127268,7 @@ lib/text/index.md
|
|
|
126978
127268
|
- [parseHost](functions/parseHost.md)
|
|
126979
127269
|
- [parseJson](functions/parseJson.md)
|
|
126980
127270
|
- [parseUrl](functions/parseUrl.md)
|
|
127271
|
+
- [parseVersion](functions/parseVersion.md)
|
|
126981
127272
|
- [queryParse](functions/queryParse.md)
|
|
126982
127273
|
- [queryStringify](functions/queryStringify.md)
|
|
126983
127274
|
- [sizeFormat](functions/sizeFormat.md)
|
|
@@ -127001,7 +127292,7 @@ lib/text/interfaces/IDomain.md
|
|
|
127001
127292
|
|
|
127002
127293
|
# Interface: IDomain
|
|
127003
127294
|
|
|
127004
|
-
Defined in: [lib/text.ts:
|
|
127295
|
+
Defined in: [lib/text.ts:350](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L350)
|
|
127005
127296
|
|
|
127006
127297
|
解析后的 domain
|
|
127007
127298
|
|
|
@@ -127011,7 +127302,7 @@ Defined in: [lib/text.ts:312](https://github.com/maiyunnet/kebab/blob/master/lib
|
|
|
127011
127302
|
|
|
127012
127303
|
> **domain**: `string` \| `null`
|
|
127013
127304
|
|
|
127014
|
-
Defined in: [lib/text.ts:
|
|
127305
|
+
Defined in: [lib/text.ts:353](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L353)
|
|
127015
127306
|
|
|
127016
127307
|
***
|
|
127017
127308
|
|
|
@@ -127019,7 +127310,7 @@ Defined in: [lib/text.ts:315](https://github.com/maiyunnet/kebab/blob/master/lib
|
|
|
127019
127310
|
|
|
127020
127311
|
> **sld**: `string` \| `null`
|
|
127021
127312
|
|
|
127022
|
-
Defined in: [lib/text.ts:
|
|
127313
|
+
Defined in: [lib/text.ts:352](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L352)
|
|
127023
127314
|
|
|
127024
127315
|
***
|
|
127025
127316
|
|
|
@@ -127027,7 +127318,7 @@ Defined in: [lib/text.ts:314](https://github.com/maiyunnet/kebab/blob/master/lib
|
|
|
127027
127318
|
|
|
127028
127319
|
> **sub**: `string` \| `null`
|
|
127029
127320
|
|
|
127030
|
-
Defined in: [lib/text.ts:
|
|
127321
|
+
Defined in: [lib/text.ts:354](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L354)
|
|
127031
127322
|
|
|
127032
127323
|
***
|
|
127033
127324
|
|
|
@@ -127035,7 +127326,7 @@ Defined in: [lib/text.ts:316](https://github.com/maiyunnet/kebab/blob/master/lib
|
|
|
127035
127326
|
|
|
127036
127327
|
> **tld**: `string` \| `null`
|
|
127037
127328
|
|
|
127038
|
-
Defined in: [lib/text.ts:
|
|
127329
|
+
Defined in: [lib/text.ts:351](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L351)
|
|
127039
127330
|
|
|
127040
127331
|
lib/text/type-aliases/TFalsy.md
|
|
127041
127332
|
---
|
|
@@ -127050,7 +127341,7 @@ lib/text/type-aliases/TFalsy.md
|
|
|
127050
127341
|
|
|
127051
127342
|
> **TFalsy** = `false` \| `""` \| `0` \| `null` \| `undefined` \| *typeof* `NaN`
|
|
127052
127343
|
|
|
127053
|
-
Defined in: [lib/text.ts:
|
|
127344
|
+
Defined in: [lib/text.ts:808](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L808)
|
|
127054
127345
|
|
|
127055
127346
|
虚假值类型
|
|
127056
127347
|
|
|
@@ -127067,7 +127358,7 @@ lib/text/variables/REGEXP_ASCII.md
|
|
|
127067
127358
|
|
|
127068
127359
|
> `const` **REGEXP\_ASCII**: `RegExp`
|
|
127069
127360
|
|
|
127070
|
-
Defined in: [lib/text.ts:
|
|
127361
|
+
Defined in: [lib/text.ts:323](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L323)
|
|
127071
127362
|
|
|
127072
127363
|
可打印的 ascii 字符集
|
|
127073
127364
|
|
|
@@ -127084,7 +127375,7 @@ lib/text/variables/REGEXP_DOMAIN.md
|
|
|
127084
127375
|
|
|
127085
127376
|
> `const` **REGEXP\_DOMAIN**: `RegExp`
|
|
127086
127377
|
|
|
127087
|
-
Defined in: [lib/text.ts:
|
|
127378
|
+
Defined in: [lib/text.ts:311](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L311)
|
|
127088
127379
|
|
|
127089
127380
|
lib/text/variables/REGEXP_EMAIL.md
|
|
127090
127381
|
---
|
|
@@ -127099,7 +127390,7 @@ lib/text/variables/REGEXP_EMAIL.md
|
|
|
127099
127390
|
|
|
127100
127391
|
> `const` **REGEXP\_EMAIL**: `RegExp`
|
|
127101
127392
|
|
|
127102
|
-
Defined in: [lib/text.ts:
|
|
127393
|
+
Defined in: [lib/text.ts:285](https://github.com/maiyunnet/kebab/blob/master/lib/text.ts#L285)
|
|
127103
127394
|
|
|
127104
127395
|
lib/time/classes/Time.md
|
|
127105
127396
|
---
|
|
@@ -134542,7 +134833,7 @@ sys/mod/classes/default.md
|
|
|
134542
134833
|
|
|
134543
134834
|
# Class: default
|
|
134544
134835
|
|
|
134545
|
-
Defined in: [sys/mod.ts:
|
|
134836
|
+
Defined in: [sys/mod.ts:74](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L74)
|
|
134546
134837
|
|
|
134547
134838
|
开启软更需要在表添加字段:ALTER TABLE `table_name` ADD `time_remove` bigint NOT NULL DEFAULT '0' AFTER `xxx`;
|
|
134548
134839
|
|
|
@@ -134552,7 +134843,7 @@ Defined in: [sys/mod.ts:66](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
134552
134843
|
|
|
134553
134844
|
> **new default**(`opt`): `Mod`
|
|
134554
134845
|
|
|
134555
|
-
Defined in: [sys/mod.ts:
|
|
134846
|
+
Defined in: [sys/mod.ts:128](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L128)
|
|
134556
134847
|
|
|
134557
134848
|
构造函数
|
|
134558
134849
|
|
|
@@ -134626,7 +134917,7 @@ MySQL 表前缀或 PostgreSQL Schema 名,优先级:选项 > 类属性 > 配
|
|
|
134626
134917
|
|
|
134627
134918
|
> `protected` **\_contain**: \{ `key`: `string`; `list`: `string`[]; \} \| `null` = `null`
|
|
134628
134919
|
|
|
134629
|
-
Defined in: [sys/mod.ts:
|
|
134920
|
+
Defined in: [sys/mod.ts:104](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L104)
|
|
134630
134921
|
|
|
134631
134922
|
必须追加的数据筛选 key 与 values,仅单表模式有效
|
|
134632
134923
|
|
|
@@ -134636,7 +134927,7 @@ Defined in: [sys/mod.ts:96](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
134636
134927
|
|
|
134637
134928
|
> `protected` `optional` **\_ctr?**: [`Ctr`](../../ctr/classes/Ctr.md) = `undefined`
|
|
134638
134929
|
|
|
134639
|
-
Defined in: [sys/mod.ts:
|
|
134930
|
+
Defined in: [sys/mod.ts:119](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L119)
|
|
134640
134931
|
|
|
134641
134932
|
ctr 对象
|
|
134642
134933
|
|
|
@@ -134646,7 +134937,7 @@ ctr 对象
|
|
|
134646
134937
|
|
|
134647
134938
|
> `protected` **\_data**: `Record`\<`string`, `any`\> = `{}`
|
|
134648
134939
|
|
|
134649
|
-
Defined in: [sys/mod.ts:
|
|
134940
|
+
Defined in: [sys/mod.ts:98](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L98)
|
|
134650
134941
|
|
|
134651
134942
|
模型获取的属性
|
|
134652
134943
|
|
|
@@ -134656,7 +134947,7 @@ Defined in: [sys/mod.ts:90](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
134656
134947
|
|
|
134657
134948
|
> `protected` **\_db**: [`Transaction`](../../../lib/db/tran/classes/Transaction.md) \| [`Pool`](../../../lib/db/pool/classes/Pool.md)
|
|
134658
134949
|
|
|
134659
|
-
Defined in: [sys/mod.ts:
|
|
134950
|
+
Defined in: [sys/mod.ts:113](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L113)
|
|
134660
134951
|
|
|
134661
134952
|
数据库连接对象
|
|
134662
134953
|
|
|
@@ -134666,7 +134957,7 @@ Defined in: [sys/mod.ts:105](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
134666
134957
|
|
|
134667
134958
|
> `protected` **\_fieldPrefix**: `string` = `''`
|
|
134668
134959
|
|
|
134669
|
-
Defined in: [sys/mod.ts:
|
|
134960
|
+
Defined in: [sys/mod.ts:122](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L122)
|
|
134670
134961
|
|
|
134671
134962
|
主表筛选前缀,优先 alias,其次表名
|
|
134672
134963
|
|
|
@@ -134676,7 +134967,7 @@ Defined in: [sys/mod.ts:114](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
134676
134967
|
|
|
134677
134968
|
> `protected` **\_index**: `string`[] \| `null` = `null`
|
|
134678
134969
|
|
|
134679
|
-
Defined in: [sys/mod.ts:
|
|
134970
|
+
Defined in: [sys/mod.ts:101](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L101)
|
|
134680
134971
|
|
|
134681
134972
|
当前选择的分表 _ 后缀,多个代表联查
|
|
134682
134973
|
|
|
@@ -134686,7 +134977,7 @@ Defined in: [sys/mod.ts:93](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
134686
134977
|
|
|
134687
134978
|
> `protected` **\_jsonUpdates**: `Record`\<`string`, `boolean`\> = `{}`
|
|
134688
134979
|
|
|
134689
|
-
Defined in: [sys/mod.ts:
|
|
134980
|
+
Defined in: [sys/mod.ts:95](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L95)
|
|
134690
134981
|
|
|
134691
134982
|
要在数据库边界序列化的 JSON 字段
|
|
134692
134983
|
|
|
@@ -134696,7 +134987,7 @@ Defined in: [sys/mod.ts:87](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
134696
134987
|
|
|
134697
134988
|
> `protected` **\_sql**: [`Sql`](../../../lib/sql/classes/Sql.md)
|
|
134698
134989
|
|
|
134699
|
-
Defined in: [sys/mod.ts:
|
|
134990
|
+
Defined in: [sys/mod.ts:116](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L116)
|
|
134700
134991
|
|
|
134701
134992
|
Sql 对象
|
|
134702
134993
|
|
|
@@ -134706,7 +134997,7 @@ Sql 对象
|
|
|
134706
134997
|
|
|
134707
134998
|
> `protected` **\_total**: `number`[] = `[]`
|
|
134708
134999
|
|
|
134709
|
-
Defined in: [sys/mod.ts:
|
|
135000
|
+
Defined in: [sys/mod.ts:110](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L110)
|
|
134710
135001
|
|
|
134711
135002
|
已算出的 total
|
|
134712
135003
|
|
|
@@ -134716,7 +135007,7 @@ Defined in: [sys/mod.ts:102](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
134716
135007
|
|
|
134717
135008
|
> `protected` **\_updates**: `Record`\<`string`, `boolean`\> = `{}`
|
|
134718
135009
|
|
|
134719
|
-
Defined in: [sys/mod.ts:
|
|
135010
|
+
Defined in: [sys/mod.ts:92](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L92)
|
|
134720
135011
|
|
|
134721
135012
|
要 update 的内容
|
|
134722
135013
|
|
|
@@ -134726,7 +135017,7 @@ Defined in: [sys/mod.ts:84](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
134726
135017
|
|
|
134727
135018
|
> `protected` `static` **\_$index**: `string` = `''`
|
|
134728
135019
|
|
|
134729
|
-
Defined in: [sys/mod.ts:
|
|
135020
|
+
Defined in: [sys/mod.ts:86](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L86)
|
|
134730
135021
|
|
|
134731
135022
|
若使用 _$key 并且有多个 unique 索引,这里指定 _$key 的索引名
|
|
134732
135023
|
|
|
@@ -134736,7 +135027,7 @@ Defined in: [sys/mod.ts:78](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
134736
135027
|
|
|
134737
135028
|
> `protected` `static` **\_$key**: `string` = `''`
|
|
134738
135029
|
|
|
134739
|
-
Defined in: [sys/mod.ts:
|
|
135030
|
+
Defined in: [sys/mod.ts:83](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L83)
|
|
134740
135031
|
|
|
134741
135032
|
设置后将由 _keyGenerator 函数生成唯一字段
|
|
134742
135033
|
|
|
@@ -134746,7 +135037,7 @@ Defined in: [sys/mod.ts:75](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
134746
135037
|
|
|
134747
135038
|
> `protected` `static` `optional` **\_$pre?**: `string`
|
|
134748
135039
|
|
|
134749
|
-
Defined in: [sys/mod.ts:
|
|
135040
|
+
Defined in: [sys/mod.ts:89](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L89)
|
|
134750
135041
|
|
|
134751
135042
|
前缀,MySQL 时为表前缀(如 prefix_),PostgreSQL 时为 Schema 名。顺序:选项前缀 -> 本前缀 -> 配置文件前缀
|
|
134752
135043
|
|
|
@@ -134756,7 +135047,7 @@ Defined in: [sys/mod.ts:81](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
134756
135047
|
|
|
134757
135048
|
> `protected` `static` **\_$primary**: `string` = `'id'`
|
|
134758
135049
|
|
|
134759
|
-
Defined in: [sys/mod.ts:
|
|
135050
|
+
Defined in: [sys/mod.ts:80](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L80)
|
|
134760
135051
|
|
|
134761
135052
|
主键字段名
|
|
134762
135053
|
|
|
@@ -134766,7 +135057,7 @@ Defined in: [sys/mod.ts:72](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
134766
135057
|
|
|
134767
135058
|
> `protected` `static` **\_$table**: `string` = `''`
|
|
134768
135059
|
|
|
134769
|
-
Defined in: [sys/mod.ts:
|
|
135060
|
+
Defined in: [sys/mod.ts:77](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L77)
|
|
134770
135061
|
|
|
134771
135062
|
表名
|
|
134772
135063
|
|
|
@@ -134776,7 +135067,7 @@ Defined in: [sys/mod.ts:69](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
134776
135067
|
|
|
134777
135068
|
> `protected` **\_keyGenerator**(): `string`
|
|
134778
135069
|
|
|
134779
|
-
Defined in: [sys/mod.ts:
|
|
135070
|
+
Defined in: [sys/mod.ts:1987](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1987)
|
|
134780
135071
|
|
|
134781
135072
|
当 _key 不为空时,则依据继承此方法的方法自动生成填充 key
|
|
134782
135073
|
|
|
@@ -134800,7 +135091,7 @@ Defined in: [sys/mod.ts:1888](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
134800
135091
|
|
|
134801
135092
|
> **all**(): `Promise`\<`false` \| [`Rows`](Rows.md)\<`Mod`\>\>
|
|
134802
135093
|
|
|
134803
|
-
Defined in: [sys/mod.ts:
|
|
135094
|
+
Defined in: [sys/mod.ts:1210](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1210)
|
|
134804
135095
|
|
|
134805
135096
|
##### Returns
|
|
134806
135097
|
|
|
@@ -134810,7 +135101,7 @@ Defined in: [sys/mod.ts:1202](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
134810
135101
|
|
|
134811
135102
|
> **all**(`key`): `Promise`\<`false` \| `Record`\<`string`, `Mod`\>\>
|
|
134812
135103
|
|
|
134813
|
-
Defined in: [sys/mod.ts:
|
|
135104
|
+
Defined in: [sys/mod.ts:1211](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1211)
|
|
134814
135105
|
|
|
134815
135106
|
##### Parameters
|
|
134816
135107
|
|
|
@@ -134838,7 +135129,7 @@ Defined in: [sys/mod.ts:1203](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
134838
135129
|
|
|
134839
135130
|
> **allArray**(): `Promise`\<`false` \| `Record`\<`string`, `any`\>[]\>
|
|
134840
135131
|
|
|
134841
|
-
Defined in: [sys/mod.ts:
|
|
135132
|
+
Defined in: [sys/mod.ts:1389](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1389)
|
|
134842
135133
|
|
|
134843
135134
|
##### Returns
|
|
134844
135135
|
|
|
@@ -134848,7 +135139,7 @@ Defined in: [sys/mod.ts:1381](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
134848
135139
|
|
|
134849
135140
|
> **allArray**(`key`): `Promise`\<`false` \| `Record`\<`string`, `Record`\<`string`, `any`\>\>\>
|
|
134850
135141
|
|
|
134851
|
-
Defined in: [sys/mod.ts:
|
|
135142
|
+
Defined in: [sys/mod.ts:1390](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1390)
|
|
134852
135143
|
|
|
134853
135144
|
##### Parameters
|
|
134854
135145
|
|
|
@@ -134862,11 +135153,76 @@ Defined in: [sys/mod.ts:1382](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
134862
135153
|
|
|
134863
135154
|
***
|
|
134864
135155
|
|
|
135156
|
+
### allCursor()
|
|
135157
|
+
|
|
135158
|
+
> **allCursor**\<`T`\>(`count`, `opt`): `Promise`\<`false` \| [`ICursorPage`](../interfaces/ICursorPage.md)\<`T`\>\>
|
|
135159
|
+
|
|
135160
|
+
Defined in: [sys/mod.ts:1638](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1638)
|
|
135161
|
+
|
|
135162
|
+
读取一批游标数据,多取一条判断后续记录,不使用 OFFSET,不修改原查询
|
|
135163
|
+
排序字段必须全部非空、同向,且组合唯一;SELECT 中须包含对应字段(同名或指定 keys)
|
|
135164
|
+
|
|
135165
|
+
#### Type Parameters
|
|
135166
|
+
|
|
135167
|
+
##### T
|
|
135168
|
+
|
|
135169
|
+
`T` *extends* `Record`\<`string`, `unknown`\> = `Record`\<`string`, `unknown`\>
|
|
135170
|
+
|
|
135171
|
+
#### Parameters
|
|
135172
|
+
|
|
135173
|
+
##### count
|
|
135174
|
+
|
|
135175
|
+
`number`
|
|
135176
|
+
|
|
135177
|
+
本批数量
|
|
135178
|
+
|
|
135179
|
+
##### opt
|
|
135180
|
+
|
|
135181
|
+
排序、边界和方向;before 为 true 时读取前一批并恢复展示顺序
|
|
135182
|
+
|
|
135183
|
+
###### before?
|
|
135184
|
+
|
|
135185
|
+
`boolean`
|
|
135186
|
+
|
|
135187
|
+
是否读取边界前一批,须提供 cursor
|
|
135188
|
+
|
|
135189
|
+
###### by
|
|
135190
|
+
|
|
135191
|
+
`string` \| `string`[]
|
|
135192
|
+
|
|
135193
|
+
排序字段,支持表别名
|
|
135194
|
+
|
|
135195
|
+
###### cursor?
|
|
135196
|
+
|
|
135197
|
+
[`TCursorValue`](../../../lib/sql/type-aliases/TCursorValue.md)[]
|
|
135198
|
+
|
|
135199
|
+
边界行的字段值,首批省略
|
|
135200
|
+
|
|
135201
|
+
###### keys?
|
|
135202
|
+
|
|
135203
|
+
`string`[]
|
|
135204
|
+
|
|
135205
|
+
SELECT 结果中对应的字段名,默认去掉 by 的表别名
|
|
135206
|
+
|
|
135207
|
+
###### order?
|
|
135208
|
+
|
|
135209
|
+
`"DESC"` \| `"ASC"`
|
|
135210
|
+
|
|
135211
|
+
展示顺序,默认 DESC
|
|
135212
|
+
|
|
135213
|
+
#### Returns
|
|
135214
|
+
|
|
135215
|
+
`Promise`\<`false` \| [`ICursorPage`](../interfaces/ICursorPage.md)\<`T`\>\>
|
|
135216
|
+
|
|
135217
|
+
列表、首末行游标和扫描方向上的 hasMore,数据库错误返回 false
|
|
135218
|
+
|
|
135219
|
+
***
|
|
135220
|
+
|
|
134865
135221
|
### append()
|
|
134866
135222
|
|
|
134867
135223
|
> **append**(`sql`): `this`
|
|
134868
135224
|
|
|
134869
|
-
Defined in: [sys/mod.ts:
|
|
135225
|
+
Defined in: [sys/mod.ts:1896](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1896)
|
|
134870
135226
|
|
|
134871
135227
|
在 sql 最后追加字符串
|
|
134872
135228
|
|
|
@@ -134886,7 +135242,7 @@ Defined in: [sys/mod.ts:1797](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
134886
135242
|
|
|
134887
135243
|
> **by**(`c`, `d?`): `this`
|
|
134888
135244
|
|
|
134889
|
-
Defined in: [sys/mod.ts:
|
|
135245
|
+
Defined in: [sys/mod.ts:1852](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1852)
|
|
134890
135246
|
|
|
134891
135247
|
ORDER BY
|
|
134892
135248
|
|
|
@@ -134914,7 +135270,7 @@ ORDER BY
|
|
|
134914
135270
|
|
|
134915
135271
|
> **contain**(`contain`): `this`
|
|
134916
135272
|
|
|
134917
|
-
Defined in: [sys/mod.ts:
|
|
135273
|
+
Defined in: [sys/mod.ts:1905](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1905)
|
|
134918
135274
|
|
|
134919
135275
|
设置闭包含数据
|
|
134920
135276
|
|
|
@@ -134942,7 +135298,7 @@ Defined in: [sys/mod.ts:1806](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
134942
135298
|
|
|
134943
135299
|
> **count**(): `Promise`\<`number`\>
|
|
134944
135300
|
|
|
134945
|
-
Defined in: [sys/mod.ts:
|
|
135301
|
+
Defined in: [sys/mod.ts:1688](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1688)
|
|
134946
135302
|
|
|
134947
135303
|
根据当前条件,筛选出当前条目该有的数据条数
|
|
134948
135304
|
|
|
@@ -134956,7 +135312,7 @@ Defined in: [sys/mod.ts:1589](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
134956
135312
|
|
|
134957
135313
|
> **countSql**(): `string`
|
|
134958
135314
|
|
|
134959
|
-
Defined in: [sys/mod.ts:
|
|
135315
|
+
Defined in: [sys/mod.ts:1709](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1709)
|
|
134960
135316
|
|
|
134961
135317
|
获取当前条件下的 count 的 SQL 语句
|
|
134962
135318
|
|
|
@@ -134970,7 +135326,7 @@ Defined in: [sys/mod.ts:1610](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
134970
135326
|
|
|
134971
135327
|
> **create**(): `Promise`\<`boolean` \| `null`\>
|
|
134972
135328
|
|
|
134973
|
-
Defined in: [sys/mod.ts:
|
|
135329
|
+
Defined in: [sys/mod.ts:889](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L889)
|
|
134974
135330
|
|
|
134975
135331
|
创建数据
|
|
134976
135332
|
|
|
@@ -134986,7 +135342,7 @@ true-成功,false-报错,null-唯一键非 _$key 键冲突
|
|
|
134986
135342
|
|
|
134987
135343
|
> **crossJoin**(`f`, `s`, `index?`, `pre?`): `this`
|
|
134988
135344
|
|
|
134989
|
-
Defined in: [sys/mod.ts:
|
|
135345
|
+
Defined in: [sys/mod.ts:1784](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1784)
|
|
134990
135346
|
|
|
134991
135347
|
cross join 方法
|
|
134992
135348
|
|
|
@@ -135036,7 +135392,7 @@ ON 信息
|
|
|
135036
135392
|
|
|
135037
135393
|
> **explain**(`all?`): `Promise`\<`string` \| `false`\>
|
|
135038
135394
|
|
|
135039
|
-
Defined in: [sys/mod.ts:
|
|
135395
|
+
Defined in: [sys/mod.ts:1515](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1515)
|
|
135040
135396
|
|
|
135041
135397
|
##### Parameters
|
|
135042
135398
|
|
|
@@ -135052,7 +135408,7 @@ Defined in: [sys/mod.ts:1507](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135052
135408
|
|
|
135053
135409
|
> **explain**(`all`): `Promise`\<`false` \| `Record`\<`string`, `any`\>\>
|
|
135054
135410
|
|
|
135055
|
-
Defined in: [sys/mod.ts:
|
|
135411
|
+
Defined in: [sys/mod.ts:1516](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1516)
|
|
135056
135412
|
|
|
135057
135413
|
##### Parameters
|
|
135058
135414
|
|
|
@@ -135070,7 +135426,7 @@ Defined in: [sys/mod.ts:1508](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135070
135426
|
|
|
135071
135427
|
> **filter**(`s`): `this`
|
|
135072
135428
|
|
|
135073
|
-
Defined in: [sys/mod.ts:
|
|
135429
|
+
Defined in: [sys/mod.ts:1830](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1830)
|
|
135074
135430
|
|
|
135075
135431
|
筛选器
|
|
135076
135432
|
|
|
@@ -135108,7 +135464,7 @@ Defined in: [sys/mod.ts:1731](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135108
135464
|
|
|
135109
135465
|
> **first**(`lock`, `array`): `Promise`\<`false` \| `Record`\<`string`, `any`\> \| `null`\>
|
|
135110
135466
|
|
|
135111
|
-
Defined in: [sys/mod.ts:
|
|
135467
|
+
Defined in: [sys/mod.ts:1099](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1099)
|
|
135112
135468
|
|
|
135113
135469
|
##### Parameters
|
|
135114
135470
|
|
|
@@ -135128,7 +135484,7 @@ Defined in: [sys/mod.ts:1091](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135128
135484
|
|
|
135129
135485
|
> **first**(`lock?`, `array?`): `Promise`\<`false` \| `Mod` & `Record`\<`string`, `any`\> \| `null`\>
|
|
135130
135486
|
|
|
135131
|
-
Defined in: [sys/mod.ts:
|
|
135487
|
+
Defined in: [sys/mod.ts:1103](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1103)
|
|
135132
135488
|
|
|
135133
135489
|
##### Parameters
|
|
135134
135490
|
|
|
@@ -135150,7 +135506,7 @@ Defined in: [sys/mod.ts:1095](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135150
135506
|
|
|
135151
135507
|
> **firstArray**(`lock?`): `Promise`\<`false` \| `Record`\<`string`, `any`\> \| `null`\>
|
|
135152
135508
|
|
|
135153
|
-
Defined in: [sys/mod.ts:
|
|
135509
|
+
Defined in: [sys/mod.ts:1143](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1143)
|
|
135154
135510
|
|
|
135155
135511
|
获取数据库第一个原生对象
|
|
135156
135512
|
|
|
@@ -135172,7 +135528,7 @@ Defined in: [sys/mod.ts:1135](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135172
135528
|
|
|
135173
135529
|
> **format**(`sql?`, `data?`): `string`
|
|
135174
135530
|
|
|
135175
|
-
Defined in: [sys/mod.ts:
|
|
135531
|
+
Defined in: [sys/mod.ts:1932](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1932)
|
|
135176
135532
|
|
|
135177
135533
|
获取带 data 的 sql 语句
|
|
135178
135534
|
|
|
@@ -135200,7 +135556,7 @@ sql 语句
|
|
|
135200
135556
|
|
|
135201
135557
|
> **fullJoin**(`f`, `s`, `index?`, `pre?`): `this`
|
|
135202
135558
|
|
|
135203
|
-
Defined in: [sys/mod.ts:
|
|
135559
|
+
Defined in: [sys/mod.ts:1772](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1772)
|
|
135204
135560
|
|
|
135205
135561
|
full join 方法
|
|
135206
135562
|
|
|
@@ -135240,7 +135596,7 @@ ON 信息
|
|
|
135240
135596
|
|
|
135241
135597
|
> **get**(`n`): `any`
|
|
135242
135598
|
|
|
135243
|
-
Defined in: [sys/mod.ts:
|
|
135599
|
+
Defined in: [sys/mod.ts:881](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L881)
|
|
135244
135600
|
|
|
135245
135601
|
获取一个字段值
|
|
135246
135602
|
|
|
@@ -135262,7 +135618,7 @@ Defined in: [sys/mod.ts:873](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
135262
135618
|
|
|
135263
135619
|
> **getData**(): `any`[]
|
|
135264
135620
|
|
|
135265
|
-
Defined in: [sys/mod.ts:
|
|
135621
|
+
Defined in: [sys/mod.ts:1923](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1923)
|
|
135266
135622
|
|
|
135267
135623
|
获取全部 data
|
|
135268
135624
|
|
|
@@ -135276,7 +135632,7 @@ Defined in: [sys/mod.ts:1824](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135276
135632
|
|
|
135277
135633
|
> **getSql**(): `string`
|
|
135278
135634
|
|
|
135279
|
-
Defined in: [sys/mod.ts:
|
|
135635
|
+
Defined in: [sys/mod.ts:1916](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1916)
|
|
135280
135636
|
|
|
135281
135637
|
获取 sql 语句
|
|
135282
135638
|
|
|
@@ -135290,7 +135646,7 @@ Defined in: [sys/mod.ts:1817](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135290
135646
|
|
|
135291
135647
|
> **group**(`c`): `this`
|
|
135292
135648
|
|
|
135293
|
-
Defined in: [sys/mod.ts:
|
|
135649
|
+
Defined in: [sys/mod.ts:1861](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1861)
|
|
135294
135650
|
|
|
135295
135651
|
GROUP BY
|
|
135296
135652
|
|
|
@@ -135312,7 +135668,7 @@ GROUP BY
|
|
|
135312
135668
|
|
|
135313
135669
|
> **having**(`s`): `this`
|
|
135314
135670
|
|
|
135315
|
-
Defined in: [sys/mod.ts:
|
|
135671
|
+
Defined in: [sys/mod.ts:1821](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1821)
|
|
135316
135672
|
|
|
135317
135673
|
筛选器
|
|
135318
135674
|
|
|
@@ -135334,7 +135690,7 @@ Defined in: [sys/mod.ts:1722](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135334
135690
|
|
|
135335
135691
|
> **hint**(`h`): `this`
|
|
135336
135692
|
|
|
135337
|
-
Defined in: [sys/mod.ts:
|
|
135693
|
+
Defined in: [sys/mod.ts:1812](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1812)
|
|
135338
135694
|
|
|
135339
135695
|
设置 MySQL 优化器 Hint
|
|
135340
135696
|
内容会以 Optimizer Hint 注释语法注入到 SELECT 关键字后
|
|
@@ -135379,7 +135735,7 @@ Hint 内容
|
|
|
135379
135735
|
|
|
135380
135736
|
> **innerJoin**(`f`, `s`, `index?`, `pre?`): `this`
|
|
135381
135737
|
|
|
135382
|
-
Defined in: [sys/mod.ts:
|
|
135738
|
+
Defined in: [sys/mod.ts:1760](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1760)
|
|
135383
135739
|
|
|
135384
135740
|
inner join 方法
|
|
135385
135741
|
|
|
@@ -135419,7 +135775,7 @@ ON 信息
|
|
|
135419
135775
|
|
|
135420
135776
|
> **join**(`f`, `s?`, `type?`, `index?`, `pre?`): `this`
|
|
135421
135777
|
|
|
135422
|
-
Defined in: [sys/mod.ts:
|
|
135778
|
+
Defined in: [sys/mod.ts:1724](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1724)
|
|
135423
135779
|
|
|
135424
135780
|
#### Parameters
|
|
135425
135781
|
|
|
@@ -135463,7 +135819,7 @@ ON 信息
|
|
|
135463
135819
|
|
|
135464
135820
|
> **langText**(`col`, `lang`): `string`
|
|
135465
135821
|
|
|
135466
|
-
Defined in: [sys/mod.ts:
|
|
135822
|
+
Defined in: [sys/mod.ts:1967](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1967)
|
|
135467
135823
|
|
|
135468
135824
|
获取字段的可用语种文本
|
|
135469
135825
|
|
|
@@ -135491,7 +135847,7 @@ Defined in: [sys/mod.ts:1868](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135491
135847
|
|
|
135492
135848
|
> **leftJoin**(`f`, `s`, `index?`, `pre?`): `this`
|
|
135493
135849
|
|
|
135494
|
-
Defined in: [sys/mod.ts:
|
|
135850
|
+
Defined in: [sys/mod.ts:1736](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1736)
|
|
135495
135851
|
|
|
135496
135852
|
left join 方法
|
|
135497
135853
|
|
|
@@ -135531,7 +135887,7 @@ ON 信息
|
|
|
135531
135887
|
|
|
135532
135888
|
> **limit**(`a`, `b?`): `this`
|
|
135533
135889
|
|
|
135534
|
-
Defined in: [sys/mod.ts:
|
|
135890
|
+
Defined in: [sys/mod.ts:1874](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1874)
|
|
135535
135891
|
|
|
135536
135892
|
LIMIT
|
|
135537
135893
|
|
|
@@ -135559,7 +135915,7 @@ LIMIT
|
|
|
135559
135915
|
|
|
135560
135916
|
> **page**(`count`, `page?`): `this`
|
|
135561
135917
|
|
|
135562
|
-
Defined in: [sys/mod.ts:
|
|
135918
|
+
Defined in: [sys/mod.ts:1885](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1885)
|
|
135563
135919
|
|
|
135564
135920
|
分页
|
|
135565
135921
|
|
|
@@ -135587,7 +135943,7 @@ Defined in: [sys/mod.ts:1786](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135587
135943
|
|
|
135588
135944
|
> **refresh**(`lock?`): `Promise`\<`boolean` \| `null`\>
|
|
135589
135945
|
|
|
135590
|
-
Defined in: [sys/mod.ts:
|
|
135946
|
+
Defined in: [sys/mod.ts:1011](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1011)
|
|
135591
135947
|
|
|
135592
135948
|
刷新当前模型获取最新数据
|
|
135593
135949
|
|
|
@@ -135609,7 +135965,7 @@ Defined in: [sys/mod.ts:1003](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135609
135965
|
|
|
135610
135966
|
> **remove**(): `Promise`\<`boolean`\>
|
|
135611
135967
|
|
|
135612
|
-
Defined in: [sys/mod.ts:
|
|
135968
|
+
Defined in: [sys/mod.ts:1077](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1077)
|
|
135613
135969
|
|
|
135614
135970
|
移除本条目
|
|
135615
135971
|
|
|
@@ -135623,7 +135979,7 @@ Defined in: [sys/mod.ts:1069](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135623
135979
|
|
|
135624
135980
|
> **rightJoin**(`f`, `s`, `index?`, `pre?`): `this`
|
|
135625
135981
|
|
|
135626
|
-
Defined in: [sys/mod.ts:
|
|
135982
|
+
Defined in: [sys/mod.ts:1748](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1748)
|
|
135627
135983
|
|
|
135628
135984
|
right join 方法
|
|
135629
135985
|
|
|
@@ -135663,7 +136019,7 @@ ON 信息
|
|
|
135663
136019
|
|
|
135664
136020
|
> **save**(`where?`): `Promise`\<`boolean`\>
|
|
135665
136021
|
|
|
135666
|
-
Defined in: [sys/mod.ts:
|
|
136022
|
+
Defined in: [sys/mod.ts:1043](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1043)
|
|
135667
136023
|
|
|
135668
136024
|
更新 set 的数据到数据库,有未保存数据时才保存
|
|
135669
136025
|
|
|
@@ -135701,7 +136057,7 @@ Defined in: [sys/mod.ts:1035](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135701
136057
|
|
|
135702
136058
|
> **set**\<`T`, `TK`\>(`n`): `void`
|
|
135703
136059
|
|
|
135704
|
-
Defined in: [sys/mod.ts:
|
|
136060
|
+
Defined in: [sys/mod.ts:846](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L846)
|
|
135705
136061
|
|
|
135706
136062
|
##### Type Parameters
|
|
135707
136063
|
|
|
@@ -135727,7 +136083,7 @@ Defined in: [sys/mod.ts:838](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
135727
136083
|
|
|
135728
136084
|
> **set**\<`T`, `TK`\>(`n`, `v`): `void`
|
|
135729
136085
|
|
|
135730
|
-
Defined in: [sys/mod.ts:
|
|
136086
|
+
Defined in: [sys/mod.ts:847](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L847)
|
|
135731
136087
|
|
|
135732
136088
|
##### Type Parameters
|
|
135733
136089
|
|
|
@@ -135759,7 +136115,7 @@ Defined in: [sys/mod.ts:839](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
135759
136115
|
|
|
135760
136116
|
> **toArray**\<`TC`\>(): [`TOnlyProperties`](../type-aliases/TOnlyProperties.md)\<`InstanceType`\<`TC`\>\> & `Record`\<`string`, `any`\>
|
|
135761
136117
|
|
|
135762
|
-
Defined in: [sys/mod.ts:
|
|
136118
|
+
Defined in: [sys/mod.ts:1939](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1939)
|
|
135763
136119
|
|
|
135764
136120
|
获取值对象,获取的是新创建的数组
|
|
135765
136121
|
|
|
@@ -135779,7 +136135,7 @@ Defined in: [sys/mod.ts:1840](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135779
136135
|
|
|
135780
136136
|
> **total**(`f?`): `Promise`\<`number`\>
|
|
135781
136137
|
|
|
135782
|
-
Defined in: [sys/mod.ts:
|
|
136138
|
+
Defined in: [sys/mod.ts:1573](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1573)
|
|
135783
136139
|
|
|
135784
136140
|
获取总条数,自动抛弃 LIMIT,仅用于获取数据的情况(select)
|
|
135785
136141
|
|
|
@@ -135795,11 +136151,28 @@ Defined in: [sys/mod.ts:1565](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135795
136151
|
|
|
135796
136152
|
***
|
|
135797
136153
|
|
|
136154
|
+
### totalEstimate()
|
|
136155
|
+
|
|
136156
|
+
> **totalEstimate**(): `Promise`\<`number` \| `false`\>
|
|
136157
|
+
|
|
136158
|
+
Defined in: [sys/mod.ts:1599](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1599)
|
|
136159
|
+
|
|
136160
|
+
从 PostgreSQL 执行计划估算查询总行数,移除外层排序和分页,不执行数据扫描
|
|
136161
|
+
请在应用游标条件前调用;非 PostgreSQL、框架分表联查或查询失败返回 false,绝不回退到 COUNT
|
|
136162
|
+
|
|
136163
|
+
#### Returns
|
|
136164
|
+
|
|
136165
|
+
`Promise`\<`number` \| `false`\>
|
|
136166
|
+
|
|
136167
|
+
近似行数或 false;估算可能偏差很大,不能用于判断有无下一批
|
|
136168
|
+
|
|
136169
|
+
***
|
|
136170
|
+
|
|
135798
136171
|
### union()
|
|
135799
136172
|
|
|
135800
136173
|
> **union**(`f`, `type?`): `this`
|
|
135801
136174
|
|
|
135802
|
-
Defined in: [sys/mod.ts:
|
|
136175
|
+
Defined in: [sys/mod.ts:1154](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1154)
|
|
135803
136176
|
|
|
135804
136177
|
联合查询表数据
|
|
135805
136178
|
|
|
@@ -135827,7 +136200,7 @@ Defined in: [sys/mod.ts:1146](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135827
136200
|
|
|
135828
136201
|
> **unionAll**(`f`): `this`
|
|
135829
136202
|
|
|
135830
|
-
Defined in: [sys/mod.ts:
|
|
136203
|
+
Defined in: [sys/mod.ts:1184](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1184)
|
|
135831
136204
|
|
|
135832
136205
|
所有联合查询表数据
|
|
135833
136206
|
|
|
@@ -135849,7 +136222,7 @@ Defined in: [sys/mod.ts:1176](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135849
136222
|
|
|
135850
136223
|
> **unsaved**(): `boolean`
|
|
135851
136224
|
|
|
135852
|
-
Defined in: [sys/mod.ts:
|
|
136225
|
+
Defined in: [sys/mod.ts:1958](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1958)
|
|
135853
136226
|
|
|
135854
136227
|
当前是否设置了未保存 --=
|
|
135855
136228
|
|
|
@@ -135863,7 +136236,7 @@ Defined in: [sys/mod.ts:1859](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135863
136236
|
|
|
135864
136237
|
> **updates**(): `Record`\<`string`, `any`\>
|
|
135865
136238
|
|
|
135866
|
-
Defined in: [sys/mod.ts:
|
|
136239
|
+
Defined in: [sys/mod.ts:1947](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1947)
|
|
135867
136240
|
|
|
135868
136241
|
获取当前设置要提交的数据
|
|
135869
136242
|
|
|
@@ -135877,7 +136250,7 @@ Defined in: [sys/mod.ts:1848](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135877
136250
|
|
|
135878
136251
|
> **upsert**(`conflict`): `Promise`\<`boolean`\>
|
|
135879
136252
|
|
|
135880
|
-
Defined in: [sys/mod.ts:
|
|
136253
|
+
Defined in: [sys/mod.ts:980](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L980)
|
|
135881
136254
|
|
|
135882
136255
|
插入数据,如果存在则更新(UPSERT)
|
|
135883
136256
|
|
|
@@ -135899,7 +136272,7 @@ Defined in: [sys/mod.ts:972](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
135899
136272
|
|
|
135900
136273
|
> **where**(`s`): `this`
|
|
135901
136274
|
|
|
135902
|
-
Defined in: [sys/mod.ts:
|
|
136275
|
+
Defined in: [sys/mod.ts:1841](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1841)
|
|
135903
136276
|
|
|
135904
136277
|
是 filter 的别名
|
|
135905
136278
|
|
|
@@ -135921,7 +136294,7 @@ Defined in: [sys/mod.ts:1742](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
135921
136294
|
|
|
135922
136295
|
> `static` **column**(`field`): `object`
|
|
135923
136296
|
|
|
135924
|
-
Defined in: [sys/mod.ts:
|
|
136297
|
+
Defined in: [sys/mod.ts:193](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L193)
|
|
135925
136298
|
|
|
135926
136299
|
创建字段对象
|
|
135927
136300
|
|
|
@@ -135953,7 +136326,7 @@ Defined in: [sys/mod.ts:185](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
135953
136326
|
|
|
135954
136327
|
> `static` **find**\<`T`\>(`db`, `val`, `opt?`): `Promise`\<`false` \| `T` & `Record`\<`string`, `any`\> \| `null`\>
|
|
135955
136328
|
|
|
135956
|
-
Defined in: [sys/mod.ts:
|
|
136329
|
+
Defined in: [sys/mod.ts:642](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L642)
|
|
135957
136330
|
|
|
135958
136331
|
根据主键(或 key 字段)获取对象
|
|
135959
136332
|
|
|
@@ -136017,7 +136390,7 @@ Defined in: [sys/mod.ts:634](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136017
136390
|
|
|
136018
136391
|
> `static` **getCreate**\<`T`\>(`db`, `opt?`): `T`
|
|
136019
136392
|
|
|
136020
|
-
Defined in: [sys/mod.ts:
|
|
136393
|
+
Defined in: [sys/mod.ts:624](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L624)
|
|
136021
136394
|
|
|
136022
136395
|
获取创建对象,通常用于新建数据库条目
|
|
136023
136396
|
|
|
@@ -136061,7 +136434,7 @@ Defined in: [sys/mod.ts:616](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136061
136434
|
|
|
136062
136435
|
> `static` **insert**(`db`, `cs`, `vs?`, `opt?`): `Promise`\<`boolean` \| `null`\>
|
|
136063
136436
|
|
|
136064
|
-
Defined in: [sys/mod.ts:
|
|
136437
|
+
Defined in: [sys/mod.ts:222](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L222)
|
|
136065
136438
|
|
|
136066
136439
|
添加一个序列(允许超过 65536 的占位符会被拆分多次执行)
|
|
136067
136440
|
|
|
@@ -136115,7 +136488,7 @@ Defined in: [sys/mod.ts:214](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136115
136488
|
|
|
136116
136489
|
> `static` **insertSql**(`db`, `cs`, `vs?`, `opt?`): `string`
|
|
136117
136490
|
|
|
136118
|
-
Defined in: [sys/mod.ts:
|
|
136491
|
+
Defined in: [sys/mod.ts:282](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L282)
|
|
136119
136492
|
|
|
136120
136493
|
获取添加一个序列的模拟 SQL
|
|
136121
136494
|
|
|
@@ -136169,7 +136542,7 @@ Defined in: [sys/mod.ts:274](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136169
136542
|
|
|
136170
136543
|
> `static` **json**\<`T`\>(`obj`): `T`
|
|
136171
136544
|
|
|
136172
|
-
Defined in: [sys/mod.ts:
|
|
136545
|
+
Defined in: [sys/mod.ts:211](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L211)
|
|
136173
136546
|
|
|
136174
136547
|
标记 JSON 字段;模型内保持原始对象,写入数据库时再序列化
|
|
136175
136548
|
|
|
@@ -136217,7 +136590,7 @@ Defined in: [sys/mod.ts:203](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136217
136590
|
|
|
136218
136591
|
> `static` **one**(`db`, `s`, `opt`): `Promise`\<`false` \| `Record`\<`string`, `any`\> \| `null`\>
|
|
136219
136592
|
|
|
136220
|
-
Defined in: [sys/mod.ts:
|
|
136593
|
+
Defined in: [sys/mod.ts:671](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L671)
|
|
136221
136594
|
|
|
136222
136595
|
##### Parameters
|
|
136223
136596
|
|
|
@@ -136271,7 +136644,7 @@ Defined in: [sys/mod.ts:663](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136271
136644
|
|
|
136272
136645
|
> `static` **one**\<`T`\>(`db`, `s`, `opt?`): `Promise`\<`false` \| `T` & `Record`\<`string`, `any`\> \| `null`\>
|
|
136273
136646
|
|
|
136274
|
-
Defined in: [sys/mod.ts:
|
|
136647
|
+
Defined in: [sys/mod.ts:685](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L685)
|
|
136275
136648
|
|
|
136276
136649
|
##### Type Parameters
|
|
136277
136650
|
|
|
@@ -136333,7 +136706,7 @@ Defined in: [sys/mod.ts:677](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136333
136706
|
|
|
136334
136707
|
> `static` **oneArray**(`db`, `s`, `opt?`): `Promise`\<`false` \| `Record`\<`string`, `any`\> \| `null`\>
|
|
136335
136708
|
|
|
136336
|
-
Defined in: [sys/mod.ts:
|
|
136709
|
+
Defined in: [sys/mod.ts:766](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L766)
|
|
136337
136710
|
|
|
136338
136711
|
通过 where 条件筛选单条数据返回原生对象
|
|
136339
136712
|
|
|
@@ -136389,7 +136762,7 @@ Defined in: [sys/mod.ts:758](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136389
136762
|
|
|
136390
136763
|
> `static` **primarys**(`db`, `where?`, `opt?`): `Promise`\<`false` \| `any`[]\>
|
|
136391
136764
|
|
|
136392
|
-
Defined in: [sys/mod.ts:
|
|
136765
|
+
Defined in: [sys/mod.ts:788](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L788)
|
|
136393
136766
|
|
|
136394
136767
|
根据 where 条件获取主键值列表
|
|
136395
136768
|
|
|
@@ -136433,7 +136806,7 @@ where 条件
|
|
|
136433
136806
|
|
|
136434
136807
|
> `static` **removeByWhere**(`db`, `where`, `opt?`): `Promise`\<`number` \| `false` \| `null`\>
|
|
136435
136808
|
|
|
136436
|
-
Defined in: [sys/mod.ts:
|
|
136809
|
+
Defined in: [sys/mod.ts:308](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L308)
|
|
136437
136810
|
|
|
136438
136811
|
根据条件移除条目
|
|
136439
136812
|
|
|
@@ -136485,7 +136858,7 @@ Defined in: [sys/mod.ts:300](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136485
136858
|
|
|
136486
136859
|
> `static` **removeByWhereSql**(`db`, `where`, `opt?`): [`Sql`](../../../lib/sql/classes/Sql.md)
|
|
136487
136860
|
|
|
136488
|
-
Defined in: [sys/mod.ts:
|
|
136861
|
+
Defined in: [sys/mod.ts:352](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L352)
|
|
136489
136862
|
|
|
136490
136863
|
根据条件移除条目(仅获取 SQL 对象)
|
|
136491
136864
|
|
|
@@ -136537,7 +136910,7 @@ Defined in: [sys/mod.ts:344](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136537
136910
|
|
|
136538
136911
|
> `static` **select**\<`T`\>(`db`, `c`, `opt?`): `T` & `Record`\<`string`, `any`\>
|
|
136539
136912
|
|
|
136540
|
-
Defined in: [sys/mod.ts:
|
|
136913
|
+
Defined in: [sys/mod.ts:561](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L561)
|
|
136541
136914
|
|
|
136542
136915
|
select 自定字段
|
|
136543
136916
|
|
|
@@ -136607,7 +136980,7 @@ select 自定字段
|
|
|
136607
136980
|
|
|
136608
136981
|
> `static` **toArrayByRecord**\<`T`\>(`obj`): `Record`\<`string`, `Record`\<`string`, `any`\>\>
|
|
136609
136982
|
|
|
136610
|
-
Defined in: [sys/mod.ts:
|
|
136983
|
+
Defined in: [sys/mod.ts:815](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L815)
|
|
136611
136984
|
|
|
136612
136985
|
将 key val 组成的数据列表转换为原生对象模式,获取的是新创建的数组
|
|
136613
136986
|
|
|
@@ -136635,7 +137008,7 @@ Defined in: [sys/mod.ts:807](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136635
137008
|
|
|
136636
137009
|
> `static` **updateByWhere**(`db`, `data`, `where`, `opt?`): `Promise`\<`number` \| `false` \| `null`\>
|
|
136637
137010
|
|
|
136638
|
-
Defined in: [sys/mod.ts:
|
|
137011
|
+
Defined in: [sys/mod.ts:385](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L385)
|
|
136639
137012
|
|
|
136640
137013
|
根据条件更新数据
|
|
136641
137014
|
|
|
@@ -136693,7 +137066,7 @@ Defined in: [sys/mod.ts:377](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136693
137066
|
|
|
136694
137067
|
> `static` **updateByWhereSql**(`db`, `data`, `where`, `opt?`): [`Sql`](../../../lib/sql/classes/Sql.md)
|
|
136695
137068
|
|
|
136696
|
-
Defined in: [sys/mod.ts:
|
|
137069
|
+
Defined in: [sys/mod.ts:431](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L431)
|
|
136697
137070
|
|
|
136698
137071
|
根据条件更新数据(仅获取 SQL 对象)
|
|
136699
137072
|
|
|
@@ -136751,7 +137124,7 @@ Defined in: [sys/mod.ts:423](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136751
137124
|
|
|
136752
137125
|
> `static` **updateList**(`db`, `data`, `key`, `opt?`): `Promise`\<`boolean` \| `null`\>
|
|
136753
137126
|
|
|
136754
|
-
Defined in: [sys/mod.ts:
|
|
137127
|
+
Defined in: [sys/mod.ts:469](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L469)
|
|
136755
137128
|
|
|
136756
137129
|
批量更新数据
|
|
136757
137130
|
|
|
@@ -136809,7 +137182,7 @@ Defined in: [sys/mod.ts:461](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136809
137182
|
|
|
136810
137183
|
> `static` **value**(`val`): `object`
|
|
136811
137184
|
|
|
136812
|
-
Defined in: [sys/mod.ts:
|
|
137185
|
+
Defined in: [sys/mod.ts:202](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L202)
|
|
136813
137186
|
|
|
136814
137187
|
创建字面量值对象,用于 where 条件中 v[0] 需要是值而非字段名的场景
|
|
136815
137188
|
|
|
@@ -136841,7 +137214,7 @@ Defined in: [sys/mod.ts:194](https://github.com/maiyunnet/kebab/blob/master/sys/
|
|
|
136841
137214
|
|
|
136842
137215
|
> `static` **where**\<`T`\>(`db`, `s?`, `opt?`): `T` & `Record`\<`string`, `any`\>
|
|
136843
137216
|
|
|
136844
|
-
Defined in: [sys/mod.ts:
|
|
137217
|
+
Defined in: [sys/mod.ts:593](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L593)
|
|
136845
137218
|
|
|
136846
137219
|
通过 where 条件获取模型
|
|
136847
137220
|
|
|
@@ -136916,7 +137289,7 @@ sys/mod/classes/Rows.md
|
|
|
136916
137289
|
|
|
136917
137290
|
# Class: Rows\<T\>
|
|
136918
137291
|
|
|
136919
|
-
Defined in: [sys/mod.ts:
|
|
137292
|
+
Defined in: [sys/mod.ts:28](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L28)
|
|
136920
137293
|
|
|
136921
137294
|
条数列表
|
|
136922
137295
|
|
|
@@ -136936,7 +137309,7 @@ Defined in: [sys/mod.ts:20](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
136936
137309
|
|
|
136937
137310
|
> **new Rows**\<`T`\>(`initialItems?`): `Rows`\<`T`\>
|
|
136938
137311
|
|
|
136939
|
-
Defined in: [sys/mod.ts:
|
|
137312
|
+
Defined in: [sys/mod.ts:32](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L32)
|
|
136940
137313
|
|
|
136941
137314
|
#### Parameters
|
|
136942
137315
|
|
|
@@ -136956,7 +137329,7 @@ Defined in: [sys/mod.ts:24](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
136956
137329
|
|
|
136957
137330
|
> **get** **length**(): `number`
|
|
136958
137331
|
|
|
136959
|
-
Defined in: [sys/mod.ts:
|
|
137332
|
+
Defined in: [sys/mod.ts:37](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L37)
|
|
136960
137333
|
|
|
136961
137334
|
总行数
|
|
136962
137335
|
|
|
@@ -136974,7 +137347,7 @@ Defined in: [sys/mod.ts:29](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
136974
137347
|
|
|
136975
137348
|
> **\[iterator\]**(): `IterableIterator`\<`T`\>
|
|
136976
137349
|
|
|
136977
|
-
Defined in: [sys/mod.ts:
|
|
137350
|
+
Defined in: [sys/mod.ts:66](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L66)
|
|
136978
137351
|
|
|
136979
137352
|
for of
|
|
136980
137353
|
|
|
@@ -136992,7 +137365,7 @@ for of
|
|
|
136992
137365
|
|
|
136993
137366
|
> **filter**(`predicate`): `Rows`\<`T`\>
|
|
136994
137367
|
|
|
136995
|
-
Defined in: [sys/mod.ts:
|
|
137368
|
+
Defined in: [sys/mod.ts:52](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L52)
|
|
136996
137369
|
|
|
136997
137370
|
根据规则筛掉项,predicate 返回 true 代表保留
|
|
136998
137371
|
|
|
@@ -137012,7 +137385,7 @@ Defined in: [sys/mod.ts:44](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
137012
137385
|
|
|
137013
137386
|
> **item**(`index`): `T`
|
|
137014
137387
|
|
|
137015
|
-
Defined in: [sys/mod.ts:
|
|
137388
|
+
Defined in: [sys/mod.ts:42](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L42)
|
|
137016
137389
|
|
|
137017
137390
|
通过索引获取一个对象
|
|
137018
137391
|
|
|
@@ -137036,7 +137409,7 @@ Defined in: [sys/mod.ts:34](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
137036
137409
|
|
|
137037
137410
|
> **map**\<`TU`\>(`callbackfn`): `TU`[]
|
|
137038
137411
|
|
|
137039
|
-
Defined in: [sys/mod.ts:
|
|
137412
|
+
Defined in: [sys/mod.ts:57](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L57)
|
|
137040
137413
|
|
|
137041
137414
|
重塑对象内容为数组
|
|
137042
137415
|
|
|
@@ -137062,7 +137435,7 @@ Defined in: [sys/mod.ts:49](https://github.com/maiyunnet/kebab/blob/master/sys/m
|
|
|
137062
137435
|
|
|
137063
137436
|
> **toArray**(): `Record`\<`string`, `any`\>[]
|
|
137064
137437
|
|
|
137065
|
-
Defined in: [sys/mod.ts:
|
|
137438
|
+
Defined in: [sys/mod.ts:47](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L47)
|
|
137066
137439
|
|
|
137067
137440
|
转换为数组对象,获取的是新创建的数组
|
|
137068
137441
|
|
|
@@ -137092,6 +137465,7 @@ sys/mod/index.md
|
|
|
137092
137465
|
|
|
137093
137466
|
## Interfaces
|
|
137094
137467
|
|
|
137468
|
+
- [ICursorPage](interfaces/ICursorPage.md)
|
|
137095
137469
|
- [IModUnionItem](interfaces/IModUnionItem.md)
|
|
137096
137470
|
- [IRows](interfaces/IRows.md)
|
|
137097
137471
|
|
|
@@ -137099,6 +137473,59 @@ sys/mod/index.md
|
|
|
137099
137473
|
|
|
137100
137474
|
- [TOnlyProperties](type-aliases/TOnlyProperties.md)
|
|
137101
137475
|
|
|
137476
|
+
sys/mod/interfaces/ICursorPage.md
|
|
137477
|
+
---
|
|
137478
|
+
|
|
137479
|
+
[**Documents for @maiyunnet/kebab**](../../../index.md)
|
|
137480
|
+
|
|
137481
|
+
***
|
|
137482
|
+
|
|
137483
|
+
[Documents for @maiyunnet/kebab](../../../index.md) / [sys/mod](../index.md) / ICursorPage
|
|
137484
|
+
|
|
137485
|
+
# Interface: ICursorPage\<T\>
|
|
137486
|
+
|
|
137487
|
+
Defined in: [sys/mod.ts:20](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L20)
|
|
137488
|
+
|
|
137489
|
+
一批游标查询结果,hasMore 表示扫描方向上还有记录
|
|
137490
|
+
|
|
137491
|
+
## Type Parameters
|
|
137492
|
+
|
|
137493
|
+
### T
|
|
137494
|
+
|
|
137495
|
+
`T` *extends* `Record`\<`string`, `unknown`\> = `Record`\<`string`, `unknown`\>
|
|
137496
|
+
|
|
137497
|
+
## Properties
|
|
137498
|
+
|
|
137499
|
+
### hasMore
|
|
137500
|
+
|
|
137501
|
+
> **hasMore**: `boolean`
|
|
137502
|
+
|
|
137503
|
+
Defined in: [sys/mod.ts:22](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L22)
|
|
137504
|
+
|
|
137505
|
+
***
|
|
137506
|
+
|
|
137507
|
+
### list
|
|
137508
|
+
|
|
137509
|
+
> **list**: `T`[]
|
|
137510
|
+
|
|
137511
|
+
Defined in: [sys/mod.ts:21](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L21)
|
|
137512
|
+
|
|
137513
|
+
***
|
|
137514
|
+
|
|
137515
|
+
### next
|
|
137516
|
+
|
|
137517
|
+
> **next**: [`TCursorValue`](../../../lib/sql/type-aliases/TCursorValue.md)[] \| `null`
|
|
137518
|
+
|
|
137519
|
+
Defined in: [sys/mod.ts:23](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L23)
|
|
137520
|
+
|
|
137521
|
+
***
|
|
137522
|
+
|
|
137523
|
+
### previous
|
|
137524
|
+
|
|
137525
|
+
> **previous**: [`TCursorValue`](../../../lib/sql/type-aliases/TCursorValue.md)[] \| `null`
|
|
137526
|
+
|
|
137527
|
+
Defined in: [sys/mod.ts:24](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L24)
|
|
137528
|
+
|
|
137102
137529
|
sys/mod/interfaces/IModUnionItem.md
|
|
137103
137530
|
---
|
|
137104
137531
|
|
|
@@ -137110,7 +137537,7 @@ sys/mod/interfaces/IModUnionItem.md
|
|
|
137110
137537
|
|
|
137111
137538
|
# Interface: IModUnionItem
|
|
137112
137539
|
|
|
137113
|
-
Defined in: [sys/mod.ts:
|
|
137540
|
+
Defined in: [sys/mod.ts:2001](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L2001)
|
|
137114
137541
|
|
|
137115
137542
|
## Properties
|
|
137116
137543
|
|
|
@@ -137118,7 +137545,7 @@ Defined in: [sys/mod.ts:1902](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
137118
137545
|
|
|
137119
137546
|
> **field**: `string`
|
|
137120
137547
|
|
|
137121
|
-
Defined in: [sys/mod.ts:
|
|
137548
|
+
Defined in: [sys/mod.ts:2002](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L2002)
|
|
137122
137549
|
|
|
137123
137550
|
***
|
|
137124
137551
|
|
|
@@ -137126,7 +137553,7 @@ Defined in: [sys/mod.ts:1903](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
137126
137553
|
|
|
137127
137554
|
> `optional` **where?**: `any`
|
|
137128
137555
|
|
|
137129
|
-
Defined in: [sys/mod.ts:
|
|
137556
|
+
Defined in: [sys/mod.ts:2003](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L2003)
|
|
137130
137557
|
|
|
137131
137558
|
sys/mod/interfaces/IRows.md
|
|
137132
137559
|
---
|
|
@@ -137139,7 +137566,7 @@ sys/mod/interfaces/IRows.md
|
|
|
137139
137566
|
|
|
137140
137567
|
# Interface: IRows\<T\>
|
|
137141
137568
|
|
|
137142
|
-
Defined in: [sys/mod.ts:
|
|
137569
|
+
Defined in: [sys/mod.ts:1995](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1995)
|
|
137143
137570
|
|
|
137144
137571
|
## Extends
|
|
137145
137572
|
|
|
@@ -137157,7 +137584,7 @@ Defined in: [sys/mod.ts:1896](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
137157
137584
|
|
|
137158
137585
|
> `readonly` **length**: `number`
|
|
137159
137586
|
|
|
137160
|
-
Defined in: [sys/mod.ts:
|
|
137587
|
+
Defined in: [sys/mod.ts:1996](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1996)
|
|
137161
137588
|
|
|
137162
137589
|
## Methods
|
|
137163
137590
|
|
|
@@ -137165,7 +137592,7 @@ Defined in: [sys/mod.ts:1897](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
137165
137592
|
|
|
137166
137593
|
> **item**(`index`): `T`
|
|
137167
137594
|
|
|
137168
|
-
Defined in: [sys/mod.ts:
|
|
137595
|
+
Defined in: [sys/mod.ts:1997](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1997)
|
|
137169
137596
|
|
|
137170
137597
|
#### Parameters
|
|
137171
137598
|
|
|
@@ -137183,7 +137610,7 @@ Defined in: [sys/mod.ts:1898](https://github.com/maiyunnet/kebab/blob/master/sys
|
|
|
137183
137610
|
|
|
137184
137611
|
> **toArray**(): `Record`\<`string`, `any`\>[]
|
|
137185
137612
|
|
|
137186
|
-
Defined in: [sys/mod.ts:
|
|
137613
|
+
Defined in: [sys/mod.ts:1998](https://github.com/maiyunnet/kebab/blob/master/sys/mod.ts#L1998)
|
|
137187
137614
|
|
|
137188
137615
|
#### Returns
|
|
137189
137616
|
|