pqb 0.31.0 → 0.31.2
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/dist/index.d.ts +68 -18
- package/dist/index.js +70 -23
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +70 -23
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as orchid_core from 'orchid-core';
|
|
2
|
-
import { QueryResultRow, AdapterConfigBase, AdapterBase, QueryInput, Sql, RecordUnknown, RecordKeyTrue, EmptyObject, QueryBaseCommon, QueryColumns, QueryMetaBase, QueryReturnType, QueryThen, Expression, QueryColumn, MaybeArray, SelectableBase, TemplateLiteralArgs, PickOutputTypeAndOperators, PickQueryResult, OperatorToSQL, ColumnsShapeBase, ColumnsParsers, RecordString, PickQueryTable, FnUnknownToUnknown, ExpressionChain, getValueKey, PickQueryShape, PickQueryTableMetaResult, EmptyTuple, PickQueryMeta, PickQueryMetaResultReturnType, QueryColumnToNullable, PickQueryMetaShape, PickQueryTableMetaResultShape, PickQueryMetaResultWindows, QueryColumnBooleanOrNull, ExpressionData, ValExpression, PickOutputType, SQLQueryArgs, ColumnSchemaConfig, DateColumnData, Code, TimeInterval, ColumnTypeSchemaArg, ColumnDataBase, ArrayMethodsData, RawSQLBase, RawSQLValues, ExpressionTypeMethod, DynamicSQLArg, StaticSQLArgs, ForeignKeyTable, ColumnNameOfTable, BaseNumberData, PickColumnBaseData, ColumnWithDefault, StringTypeData, PrimaryKeyColumn, ParseColumn, EncodeColumn, PickQueryMetaResult, QueryColumnsInit, DefaultSelectColumns, CoreQueryScopes, DbBase, QueryCatch, TransactionState, ColumnTypeBase, CoreBaseOperators, PickQueryUniqueProperties, IsQuery, PickQueryMetaShapeResultReturnType, MergeObjects, PickQueryResultUniqueColumns, QueryInternalBase, PickQueryReturnType, PickType, ColumnShapeOutput, OperatorsNullable, PickQueryMetaReturnType, UniqueColumn, TimestampHelpers, Codes, ColumnDataCheckBase, PickQueryTableMetaShape } from 'orchid-core';
|
|
2
|
+
import { QueryResultRow, AdapterConfigBase, AdapterBase, QueryInput, Sql, RecordUnknown, RecordKeyTrue, EmptyObject, QueryBaseCommon, QueryColumns, QueryMetaBase, QueryReturnType, QueryThen, Expression, QueryColumn, MaybeArray, SelectableBase, TemplateLiteralArgs, PickOutputTypeAndOperators, PickQueryResult, OperatorToSQL, ColumnsShapeBase, ColumnsParsers, RecordString, PickQueryTable, FnUnknownToUnknown, ExpressionChain, getValueKey, PickQueryShape, PickQueryTableMetaResult, EmptyTuple, PickQueryMeta, PickQueryMetaResultReturnType, QueryColumnToNullable, PickQueryMetaShape, PickQueryTableMetaResultShape, PickQueryMetaResultWindows, QueryColumnBooleanOrNull, ExpressionData, ValExpression, PickOutputType, SQLQueryArgs, ColumnSchemaConfig, DateColumnData, Code, TimeInterval, ColumnTypeSchemaArg, ColumnDataBase, ArrayMethodsData, RawSQLBase, RawSQLValues, ExpressionTypeMethod, DynamicSQLArg, StaticSQLArgs, ForeignKeyTable, ColumnNameOfTable, BaseNumberData, PickColumnBaseData, ColumnWithDefault, StringTypeData, PrimaryKeyColumn, ParseColumn, EncodeColumn, PickQueryMetaResult, QueryColumnsInit, DefaultSelectColumns, CoreQueryScopes, DbBase, QueryCatch, TransactionState, ColumnTypeBase, CoreBaseOperators, PickQueryUniqueProperties, IsQuery, PickQueryTableMetaResultInputType, PickQueryMetaShapeResultReturnType, MergeObjects, PickQueryResultUniqueColumns, QueryInternalBase, PickQueryReturnType, PickType, ColumnShapeOutput, OperatorsNullable, PickQueryMetaReturnType, UniqueColumn, TimestampHelpers, Codes, ColumnDataCheckBase, PickQueryTableMetaShape } from 'orchid-core';
|
|
3
3
|
import { PoolConfig, Pool, PoolClient } from 'pg';
|
|
4
4
|
import { inspect } from 'node:util';
|
|
5
5
|
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
@@ -3930,6 +3930,22 @@ declare class Create {
|
|
|
3930
3930
|
* });
|
|
3931
3931
|
* ```
|
|
3932
3932
|
*
|
|
3933
|
+
* `create` and `insert` can be used in {@link WithMethods.with} expressions:
|
|
3934
|
+
*
|
|
3935
|
+
* ```ts
|
|
3936
|
+
* db.$queryBuilder
|
|
3937
|
+
* // create a record in one table
|
|
3938
|
+
* .with('a', db.table.select('id').create(data))
|
|
3939
|
+
* // create a record in other table using the first table record id
|
|
3940
|
+
* .with('b', (q) =>
|
|
3941
|
+
* db.otherTable.select('id').create({
|
|
3942
|
+
* ...otherData,
|
|
3943
|
+
* aId: () => q.from('a').get('id'),
|
|
3944
|
+
* }),
|
|
3945
|
+
* )
|
|
3946
|
+
* .from('b');
|
|
3947
|
+
* ```
|
|
3948
|
+
*
|
|
3933
3949
|
* @param data - data for the record, may have values, raw SQL, queries, relation operations.
|
|
3934
3950
|
*/
|
|
3935
3951
|
create<T extends CreateSelf, BT extends CreateBelongsToData<T>>(this: T, data: CreateData<T, BT>): CreateResult<T, BT>;
|
|
@@ -4138,18 +4154,18 @@ declare class Create {
|
|
|
4138
4154
|
*
|
|
4139
4155
|
* // single column:
|
|
4140
4156
|
* // (this requires a composite primary key or unique index, see below)
|
|
4141
|
-
* db.table.create(data).
|
|
4157
|
+
* db.table.create(data).onConflict('email').merge();
|
|
4142
4158
|
*
|
|
4143
4159
|
* // array of columns:
|
|
4144
|
-
* db.table.create(data).
|
|
4160
|
+
* db.table.create(data).onConflict(['email', 'name']).merge();
|
|
4145
4161
|
*
|
|
4146
4162
|
* // constraint name
|
|
4147
|
-
* db.table.create(data).
|
|
4163
|
+
* db.table.create(data).onConflict({ constraint: 'unique_index_name' }).merge();
|
|
4148
4164
|
*
|
|
4149
4165
|
* // raw SQL expression:
|
|
4150
4166
|
* db.table
|
|
4151
4167
|
* .create(data)
|
|
4152
|
-
* .
|
|
4168
|
+
* .onConflict(sql`(email) where condition`)
|
|
4153
4169
|
* .merge();
|
|
4154
4170
|
* ```
|
|
4155
4171
|
*
|
|
@@ -4386,6 +4402,19 @@ declare class Delete {
|
|
|
4386
4402
|
* // delete all users who have corresponding profile records:
|
|
4387
4403
|
* db.table.join(Profile, 'profile.userId', 'user.id').all().delete();
|
|
4388
4404
|
* ```
|
|
4405
|
+
*
|
|
4406
|
+
* `delete` can be used in {@link WithMethods.with} expressions:
|
|
4407
|
+
*
|
|
4408
|
+
* ```ts
|
|
4409
|
+
* db.$queryBuilder
|
|
4410
|
+
* // delete a record in one table
|
|
4411
|
+
* .with('a', db.table.find(1).select('id').delete())
|
|
4412
|
+
* // delete a record in other table using the first table record id
|
|
4413
|
+
* .with('b', (q) =>
|
|
4414
|
+
* db.otherTable.select('id').whereIn('aId', q.from('a').pluck('id')).delete(),
|
|
4415
|
+
* )
|
|
4416
|
+
* .from('b');
|
|
4417
|
+
* ```
|
|
4389
4418
|
*/
|
|
4390
4419
|
delete<T extends PickQueryMetaResult>(this: T, ..._args: DeleteArgs<T>): DeleteResult<T>;
|
|
4391
4420
|
}
|
|
@@ -4406,12 +4435,12 @@ type FromArg<T extends FromQuerySelf> = PickQueryTableMetaResult | Expression |
|
|
|
4406
4435
|
type UnionToIntersection<U> = (U extends any ? (x: U) => void : never) extends (x: infer I) => void ? I : never;
|
|
4407
4436
|
type FromResult<T extends FromQuerySelf, Arg extends MaybeArray<FromArg<T>>> = Arg extends string ? T['withData'] extends WithDataItems ? {
|
|
4408
4437
|
[K in keyof T]: K extends 'meta' ? {
|
|
4409
|
-
[K in keyof T['meta']]: K extends 'as' ? string | undefined : K extends 'selectable' ? SelectableFromShape<T['withData'][Arg]['shape'], Arg> : T['meta'][K];
|
|
4438
|
+
[K in keyof T['meta']]: K extends 'as' ? string | undefined : K extends 'selectable' ? SelectableFromShape<T['withData'][Arg]['shape'], Arg> : K extends 'kind' ? 'select' : T['meta'][K];
|
|
4410
4439
|
} : K extends 'result' ? T['withData'][Arg]['shape'] : K extends 'then' ? QueryThen<GetQueryResult<T, T['withData'][Arg]['shape']>> : T[K];
|
|
4411
|
-
} : SetQueryTableAlias<T, Arg> : Arg extends
|
|
4440
|
+
} : SetQueryTableAlias<T, Arg> : Arg extends PickQueryTableMetaResultInputType ? {
|
|
4412
4441
|
[K in keyof T]: K extends 'meta' ? {
|
|
4413
|
-
[K in keyof T['meta']]: K extends 'as' ? AliasOrTable<Arg> : K extends 'selectable' ? SelectableFromShape<Arg['result'], AliasOrTable<Arg>> : T['meta'][K];
|
|
4414
|
-
} : K extends 'result' ? Arg['result'] : K extends 'shape' ? Arg['result'] : K extends 'then' ? QueryThen<GetQueryResult<T, Arg['result']>> : T[K];
|
|
4442
|
+
[K in keyof T['meta']]: K extends 'as' ? AliasOrTable<Arg> : K extends 'selectable' ? SelectableFromShape<Arg['result'], AliasOrTable<Arg>> : K extends 'kind' ? 'select' : T['meta'][K];
|
|
4443
|
+
} : K extends 'result' ? Arg['result'] : K extends 'shape' ? Arg['result'] : K extends 'inputType' ? Arg['inputType'] : K extends 'then' ? QueryThen<GetQueryResult<T, Arg['result']>> : T[K];
|
|
4415
4444
|
} : Arg extends (infer A)[] ? {
|
|
4416
4445
|
[K in keyof T]: K extends 'meta' ? {
|
|
4417
4446
|
[K in keyof T['meta']]: K extends 'selectable' ? UnionToIntersection<A extends string ? T['withData'] extends WithDataItems ? {
|
|
@@ -4461,7 +4490,7 @@ declare class FromMethods {
|
|
|
4461
4490
|
*
|
|
4462
4491
|
* @param arg - query or name of CTE table
|
|
4463
4492
|
*/
|
|
4464
|
-
from<T extends FromQuerySelf, Arg extends MaybeArray<FromArg<T>>>(this: T, arg: T['meta']['hasSelect'] extends true ? '`select` must be
|
|
4493
|
+
from<T extends FromQuerySelf, Arg extends MaybeArray<FromArg<T>>>(this: T, arg: T['meta']['hasSelect'] extends true ? '`select` must be placed after `from`' : Arg): FromResult<T, Arg>;
|
|
4465
4494
|
/**
|
|
4466
4495
|
* Set the `FROM` value with custom SQL:
|
|
4467
4496
|
*
|
|
@@ -5248,8 +5277,10 @@ interface WithRecursiveOptions extends WithArgsOptions {
|
|
|
5248
5277
|
type WithQueryBuilder<T extends PickQueryWithDataColumnTypes> = {
|
|
5249
5278
|
[K in keyof Query]: K extends 'sql' ? SqlMethod<T['columnTypes']>['sql'] : K extends 'relations' ? EmptyObject : K extends 'withData' ? T['withData'] : Query[K];
|
|
5250
5279
|
};
|
|
5251
|
-
type WithResult<T extends
|
|
5252
|
-
[K in keyof T]: K extends '
|
|
5280
|
+
type WithResult<T extends PickQueryMetaWithDataColumnTypes, Name extends string, Q extends PickQueryResult> = {
|
|
5281
|
+
[K in keyof T]: K extends 'meta' ? {
|
|
5282
|
+
[K in keyof T['meta']]: K extends 'kind' ? 'select' : T['meta'][K];
|
|
5283
|
+
} : K extends 'withData' ? {
|
|
5253
5284
|
[K in keyof T['withData'] | Name]: K extends Name ? {
|
|
5254
5285
|
table: Name;
|
|
5255
5286
|
shape: Q['result'];
|
|
@@ -5329,12 +5360,12 @@ declare class WithMethods {
|
|
|
5329
5360
|
* .select('alias.id');
|
|
5330
5361
|
* ```
|
|
5331
5362
|
*/
|
|
5332
|
-
with<T extends
|
|
5333
|
-
with<T extends
|
|
5334
|
-
withRecursive<T extends
|
|
5363
|
+
with<T extends PickQueryMetaWithDataColumnTypes, Name extends string, Q>(this: T, name: Name, query: Q | ((q: WithQueryBuilder<T>) => Q)): WithResult<T, Name, Q extends Query ? Q : never>;
|
|
5364
|
+
with<T extends PickQueryMetaWithDataColumnTypes, Name extends string, Q extends Query>(this: T, name: Name, options: WithArgsOptions, query: Q | ((qb: WithQueryBuilder<T>) => Q)): WithResult<T, Name, Q>;
|
|
5365
|
+
withRecursive<T extends PickQueryMetaWithDataColumnTypes, Name extends string, Q extends Query, Result = WithResult<T, Name, Q>>(this: T, name: Name, base: Q | ((qb: WithQueryBuilder<T>) => Q), recursive: (qb: {
|
|
5335
5366
|
[K in keyof Result]: K extends 'result' ? Q['result'] : Result[K];
|
|
5336
5367
|
}) => Query): Result;
|
|
5337
|
-
withRecursive<T extends
|
|
5368
|
+
withRecursive<T extends PickQueryMetaWithDataColumnTypes, Name extends string, Q extends Query, Result = WithResult<T, Name, Q>>(this: T, name: Name, options: WithRecursiveOptions, base: Q | ((qb: WithQueryBuilder<T>) => Q), recursive: (qb: {
|
|
5338
5369
|
[K in keyof Result]: K extends 'result' ? Q['result'] : Result[K];
|
|
5339
5370
|
}) => Query): Result;
|
|
5340
5371
|
withSql<T extends PickQueryWithDataColumnTypes, Name extends string, Shape extends ColumnsShapeBase>(this: T, name: Name, options: WithOptions, shape: (t: T['columnTypes']) => Shape, expr: (q: T) => Expression): WithSqlResult<T, Name, Shape>;
|
|
@@ -5598,7 +5629,24 @@ declare class Update {
|
|
|
5598
5629
|
* })
|
|
5599
5630
|
* ```
|
|
5600
5631
|
*
|
|
5601
|
-
*
|
|
5632
|
+
* `update` can be used in {@link WithMethods.with} expressions:
|
|
5633
|
+
*
|
|
5634
|
+
* ```ts
|
|
5635
|
+
* db.$queryBuilder
|
|
5636
|
+
* // update record in one table
|
|
5637
|
+
* .with('a', db.table.find(1).select('id').update(data))
|
|
5638
|
+
* // update record in other table using the first table record id
|
|
5639
|
+
* .with('b', (q) =>
|
|
5640
|
+
* db.otherTable
|
|
5641
|
+
* .find(1)
|
|
5642
|
+
* .select('id')
|
|
5643
|
+
* .update({
|
|
5644
|
+
* ...otherData,
|
|
5645
|
+
* aId: () => q.from('a').get('id'),
|
|
5646
|
+
* }),
|
|
5647
|
+
* )
|
|
5648
|
+
* .from('b');
|
|
5649
|
+
* ```
|
|
5602
5650
|
*
|
|
5603
5651
|
* ### null, undefined, unknown columns
|
|
5604
5652
|
*
|
|
@@ -6990,6 +7038,8 @@ interface PickQueryMetaResultRelationsWindowsColumnTypes extends PickQueryMetaRe
|
|
|
6990
7038
|
}
|
|
6991
7039
|
interface PickQueryWithDataColumnTypes extends PickQueryWithData, PickQueryColumnTypes {
|
|
6992
7040
|
}
|
|
7041
|
+
interface PickQueryMetaWithDataColumnTypes extends PickQueryMeta, PickQueryWithData, PickQueryColumnTypes {
|
|
7042
|
+
}
|
|
6993
7043
|
interface PickQueryMetaTable extends PickQueryMeta, PickQueryTable {
|
|
6994
7044
|
}
|
|
6995
7045
|
interface PickQueryMetaTableShape extends PickQueryMetaTable, PickQueryShape {
|
|
@@ -7836,4 +7886,4 @@ type CopyResult<T extends PickQueryMeta> = SetQueryKind<T, 'copy'>;
|
|
|
7836
7886
|
*/
|
|
7837
7887
|
declare function copyTableData<T extends PickQueryMetaShape>(query: T, arg: CopyArg<T>): CopyResult<T>;
|
|
7838
7888
|
|
|
7839
|
-
export { Adapter, AdapterConfig, AdapterOptions, AddQueryDefaults, AddQuerySelect, AfterHook, AggregateMethods, AggregateOptions, AliasOrTable, ArrayColumn, ArrayColumnValue, ArrayData, AsMethods, AsQueryArg, BaseOperators, BigIntColumn, BigSerialColumn, BitColumn, BitVaryingColumn, BooleanColumn, BooleanQueryColumn, BoxColumn, ByteaColumn, CharColumn, CidrColumn, CircleColumn, CitextColumn, Clear, ClearStatement, CloneSelfKeys, ColumnData, ColumnExpression, ColumnFromDbParams, ColumnInfoQueryData, ColumnOperators, ColumnRefExpression, ColumnType, ColumnsByType, ColumnsShape, ColumnsShapeToNullableObject, ColumnsShapeToObject, ColumnsShapeToObjectArray, ColumnsShapeToPluck, CommonQueryData, ComputedColumnsBase, CopyOptions, CopyQueryData, Create, CreateBelongsToData, CreateColumn, CreateCtx, CreateData, CreateKind, CreateMethodsNames, CreateRelationsData, CreateRelationsDataOmittingFKeys, CreateSelf, CustomTypeColumn, DateBaseColumn, DateColumn, DateColumnInput, DateTimeBaseClass, DateTimeTzBaseClass, Db, DbDomainArg, DbDomainArgRecord, DbExtension, DbOptions, DbResult, DbSharedOptions, DbTableConstructor, DbTableOptionScopes, DbTableOptions, DecimalColumn, DecimalColumnData, DefaultColumnTypes, DefaultSchemaConfig, Delete, DeleteArgs, DeleteMethodsNames, DeleteQueryData, DeleteResult, DomainColumn, DoublePrecisionColumn, DynamicRawSQL, EnumColumn, ExpressionMethods, ExpressionOutput, FnExpression, FnExpressionArgs, FnExpressionArgsPairs, FnExpressionArgsValue, For, FromArg, FromMethods, FromQuerySelf, FromResult, GetArg, GetColumnInfo, GetQueryResult, GetResult, GetResultOptional, GetStringArg, GroupArg, Having, HavingItem, HookAction, HookSelect, IdentityColumn, InetColumn, InsertQueryData, IntegerBaseColumn, IntegerColumn, IntervalColumn, IsolationLevel, JSONColumn, JSONTextColumn, Join, JoinArgs, JoinCallback, JoinFirstArg, JoinItem, JoinItemArgs, JoinLateralCallback, JoinLateralItem, JoinLateralResult, JoinOverrides, JoinQueryBuilder, JoinQueryMethod, JoinResult, JoinedParsers, JoinedShapes, JsonItem, JsonMethods, JsonModifiers, LimitedTextBaseColumn, LineColumn, LsegColumn, MacAddr8Column, MacAddrColumn, MapTableScopesOption, MergeQuery, MergeQueryMethods, MoneyColumn, MoreThanOneRowError, NoPrimaryKeyOption, NotFoundError, NumberAsStringBaseColumn, NumberBaseColumn, NumberColumnData, OnConflictMerge, OnConflictQueryBuilder, OnConflictSet, OnConflictTarget, OnMethods, Operator, Operators, OperatorsAny, OperatorsArray, OperatorsBoolean, OperatorsDate, OperatorsJson, OperatorsNumber, OperatorsText, OperatorsTime, OrCreateArg, OrExpression, OrchidOrmError, OrchidOrmInternalError, OrderArg, OrderArgSelf, OrderArgs, OrderItem, OrderTsQueryConfig, Over, PathColumn, PickColumnData, PickQueryBaseQuery, PickQueryColumnTypes, PickQueryDataShapeAndJoinedShapes, PickQueryInternal, PickQueryMetaRelations, PickQueryMetaResultRelations, PickQueryMetaResultRelationsWindows, PickQueryMetaResultRelationsWindowsColumnTypes, PickQueryMetaResultRelationsWithDataReturnType, PickQueryMetaResultRelationsWithDataReturnTypeShape, PickQueryMetaResultReturnTypeWithDataWindows, PickQueryMetaResultReturnTypeWithDataWindowsTable, PickQueryMetaShapeRelationsWithData, PickQueryMetaTable, PickQueryMetaTableShape, PickQueryMetaTableShapeReturnTypeWithData, PickQueryMetaWithData, PickQueryQ, PickQueryQAndBaseQuery, PickQueryQAndInternal, PickQueryRelations, PickQueryRelationsWithData, PickQueryShapeResultSinglePrimaryKey, PickQueryShapeSinglePrimaryKey, PickQuerySinglePrimaryKey, PickQueryWindows, PickQueryWithData, PickQueryWithDataColumnTypes, PointColumn, PolygonColumn, Query, QueryAfterHook, QueryArraysResult, QueryBase, QueryBaseThen, QueryBeforeHook, QueryData, QueryDataFromItem, QueryDataJoinTo, QueryDefaultReturnData, QueryError, QueryErrorName, QueryGet, QueryGetSelf, QueryHelperResult, QueryHookSelect, QueryHooks, QueryInternal, QueryLog, QueryLogObject, QueryLogOptions, QueryLogger, QueryMetaHasSelect, QueryMetaHasWhere, QueryMethods, QueryOrExpression, QueryOrExpressionBooleanOrNullResult, QueryResult, QueryReturnsAll, QueryScopeData, QueryScopes, QuerySourceItem, QueryTransform, QueryTransformFn, QueryUpsertOrCreate, QueryWithComputed, QueryWithTable, RawSQL, RealColumn, RecordOfColumnsShapeBase, RefExpression, RelationConfigBase, RelationConfigDataForCreate, RelationJoinQuery, RelationQuery, RelationQueryBase, RelationsBase, SearchArg, SearchMethods, SearchWeight, SearchWeightRecord, Select, SelectArg, SelectAs, SelectItem, SelectQueryData, SelectSubQueryResult, SelectableFromShape, SelectableOfType, SelectableOrExpression, SelectableOrExpressionOfType, SerialColumn, SerialColumnData, SetQueryKind, SetQueryKindResult, SetQueryReturnsAll, SetQueryReturnsAllKind, SetQueryReturnsAllKindResult, SetQueryReturnsColumnInfo, SetQueryReturnsColumnKind, SetQueryReturnsColumnKindResult, SetQueryReturnsColumnOptional, SetQueryReturnsColumnOrThrow, SetQueryReturnsOne, SetQueryReturnsOneKind, SetQueryReturnsOneKindResult, SetQueryReturnsOneOptional, SetQueryReturnsPluck, SetQueryReturnsPluckColumn, SetQueryReturnsPluckColumnKind, SetQueryReturnsPluckColumnKindResult, SetQueryReturnsRowCount, SetQueryReturnsRows, SetQueryReturnsValueOptional, SetQueryReturnsValueOrThrow, SetQueryReturnsVoid, SetQueryReturnsVoidKind, SetQueryTableAlias, ShapeColumnPrimaryKeys, ShapeUniqueColumns, SimpleJoinItem, SimpleJoinItemNonSubQueryArgs, SmallIntColumn, SmallSerialColumn, SortDir, SqlFn, SqlMethod, StringColumn$1 as StringColumn, TableData, TableDataFn, TableDataInput, TableDataItem, TableDataItemsUniqueColumnTuples, TableDataItemsUniqueColumns, TableDataItemsUniqueConstraints, TableDataMethods, TextBaseColumn, TextColumn, TextColumnData, Then, TimeColumn, TimestampColumn, TimestampTZColumn, ToSQLCtx, ToSQLOptions, ToSQLQuery, Transaction, TransactionAdapter, TransactionOptions, TransformMethods, TruncateQueryData, TsQueryColumn, TsVectorColumn, TypeParsers, UUIDColumn, UnhandledTypeError, Union, UnionArg, UnionItem, UnionKind, UnionSet, UniqueConstraints, UniqueQueryTypeOrExpression, UniqueTableDataItem, UnknownColumn, Update, UpdateArg, UpdateCtx, UpdateCtxCollect, UpdateData, UpdateQueryData, UpdateQueryDataItem, UpdateQueryDataObject, UpdateSelf, UpdatedAtDataInjector, UpsertArg, UpsertResult, UpsertThis, VarCharColumn, VirtualColumn, Where, WhereArg, WhereArgs, WhereInArg, WhereInColumn, WhereInItem, WhereInValues, WhereItem, WhereJsonPathEqualsItem, WhereNotArgs, WhereOnItem, WhereOnJoinItem, WhereQueryBuilder, WhereResult, WhereSearchItem, WhereSearchResult, WindowArg, WindowArgDeclaration, WindowDeclaration, WindowItem, WithArgsOptions, WithDataBase, WithDataItem, WithDataItems, WithItem, WithMethods, WithOptions, WithQueryBuilder, WithRecursiveOptions, WithResult, WithSqlResult, WrapQueryArg, XMLColumn, _initQueryBuilder, _queryAfterSaveCommit, _queryAll, _queryAs, _queryChangeCounter, _queryCreate, _queryCreateFrom, _queryCreateMany, _queryCreateManyFrom, _queryCreateManyRaw, _queryCreateRaw, _queryDefaults, _queryDelete, _queryExec, _queryFindBy, _queryFindByOptional, _queryGet, _queryGetOptional, _queryHookAfterCreate, _queryHookAfterCreateCommit, _queryHookAfterDelete, _queryHookAfterDeleteCommit, _queryHookAfterQuery, _queryHookAfterSave, _queryHookAfterUpdate, _queryHookAfterUpdateCommit, _queryHookBeforeCreate, _queryHookBeforeDelete, _queryHookBeforeQuery, _queryHookBeforeSave, _queryHookBeforeUpdate, _queryInsert, _queryInsertFrom, _queryInsertMany, _queryInsertManyFrom, _queryInsertManyRaw, _queryInsertRaw, _queryJoinOn, _queryJoinOnJsonPathEquals, _queryJoinOrOn, _queryOr, _queryOrNot, _queryRows, _querySelect, _queryTake, _queryTakeOptional, _queryUnion, _queryUpdate, _queryUpdateOrThrow, _queryUpdateRaw, _queryWhere, _queryWhereExists, _queryWhereIn, _queryWhereNot, _queryWhereNotSql, _queryWhereSql, addComputedColumns, addParserForRawExpression, addParserForSelectItem, addQueryOn, anyShape, checkIfASimpleQuery, cloneQuery, cloneQueryBaseUnscoped, columnCheckToCode, columnCode, columnForeignKeysToCode, columnIndexesToCode, columnsShapeToCode, constraintInnerToCode, constraintToCode, copyTableData, countSelect, createDb, defaultSchemaConfig, extendQuery, foreignKeyArgumentToCode, getClonedQueryData, getColumnInfo, getColumnTypes, getPrimaryKeys, getQueryAs, getShapeFromSelect, handleResult, identityToCode, indexInnerToCode, indexToCode, instantiateColumn, isDefaultTimeStamp, isQueryReturnsAll, isSelectingCount, joinSubQuery, logColors, logParamToLogObject, makeColumnTypes, makeColumnsByType, makeFnExpression, makeRegexToFindInSql, makeSQL, parseRecord, parseResult, parseTableData, parseTableDataInput, primaryKeyInnerToCode, processSelectArg, pushLimitSQL, pushQueryArray, pushQueryOn, pushQueryOrOn, pushQueryValue, pushTableDataCode, queryFrom, queryFromSql, queryJson, queryMethodByReturnType, queryTypeWithLimitOne, queryWrap, quote, quoteString, raw, referencesArgsToCode, resolveSubQueryCallback, saveSearchAlias, setParserForSelectedString, setQueryObjectValue, setQueryOperators, simplifyColumnDefault, sqlFn, sqlQueryArgsToExpression, tableDataMethods, templateLiteralToSQL, testTransaction, throwIfNoWhere, toSQL, toSQLCacheKey };
|
|
7889
|
+
export { Adapter, AdapterConfig, AdapterOptions, AddQueryDefaults, AddQuerySelect, AfterHook, AggregateMethods, AggregateOptions, AliasOrTable, ArrayColumn, ArrayColumnValue, ArrayData, AsMethods, AsQueryArg, BaseOperators, BigIntColumn, BigSerialColumn, BitColumn, BitVaryingColumn, BooleanColumn, BooleanQueryColumn, BoxColumn, ByteaColumn, CharColumn, CidrColumn, CircleColumn, CitextColumn, Clear, ClearStatement, CloneSelfKeys, ColumnData, ColumnExpression, ColumnFromDbParams, ColumnInfoQueryData, ColumnOperators, ColumnRefExpression, ColumnType, ColumnsByType, ColumnsShape, ColumnsShapeToNullableObject, ColumnsShapeToObject, ColumnsShapeToObjectArray, ColumnsShapeToPluck, CommonQueryData, ComputedColumnsBase, CopyOptions, CopyQueryData, Create, CreateBelongsToData, CreateColumn, CreateCtx, CreateData, CreateKind, CreateMethodsNames, CreateRelationsData, CreateRelationsDataOmittingFKeys, CreateSelf, CustomTypeColumn, DateBaseColumn, DateColumn, DateColumnInput, DateTimeBaseClass, DateTimeTzBaseClass, Db, DbDomainArg, DbDomainArgRecord, DbExtension, DbOptions, DbResult, DbSharedOptions, DbTableConstructor, DbTableOptionScopes, DbTableOptions, DecimalColumn, DecimalColumnData, DefaultColumnTypes, DefaultSchemaConfig, Delete, DeleteArgs, DeleteMethodsNames, DeleteQueryData, DeleteResult, DomainColumn, DoublePrecisionColumn, DynamicRawSQL, EnumColumn, ExpressionMethods, ExpressionOutput, FnExpression, FnExpressionArgs, FnExpressionArgsPairs, FnExpressionArgsValue, For, FromArg, FromMethods, FromQuerySelf, FromResult, GetArg, GetColumnInfo, GetQueryResult, GetResult, GetResultOptional, GetStringArg, GroupArg, Having, HavingItem, HookAction, HookSelect, IdentityColumn, InetColumn, InsertQueryData, IntegerBaseColumn, IntegerColumn, IntervalColumn, IsolationLevel, JSONColumn, JSONTextColumn, Join, JoinArgs, JoinCallback, JoinFirstArg, JoinItem, JoinItemArgs, JoinLateralCallback, JoinLateralItem, JoinLateralResult, JoinOverrides, JoinQueryBuilder, JoinQueryMethod, JoinResult, JoinedParsers, JoinedShapes, JsonItem, JsonMethods, JsonModifiers, LimitedTextBaseColumn, LineColumn, LsegColumn, MacAddr8Column, MacAddrColumn, MapTableScopesOption, MergeQuery, MergeQueryMethods, MoneyColumn, MoreThanOneRowError, NoPrimaryKeyOption, NotFoundError, NumberAsStringBaseColumn, NumberBaseColumn, NumberColumnData, OnConflictMerge, OnConflictQueryBuilder, OnConflictSet, OnConflictTarget, OnMethods, Operator, Operators, OperatorsAny, OperatorsArray, OperatorsBoolean, OperatorsDate, OperatorsJson, OperatorsNumber, OperatorsText, OperatorsTime, OrCreateArg, OrExpression, OrchidOrmError, OrchidOrmInternalError, OrderArg, OrderArgSelf, OrderArgs, OrderItem, OrderTsQueryConfig, Over, PathColumn, PickColumnData, PickQueryBaseQuery, PickQueryColumnTypes, PickQueryDataShapeAndJoinedShapes, PickQueryInternal, PickQueryMetaRelations, PickQueryMetaResultRelations, PickQueryMetaResultRelationsWindows, PickQueryMetaResultRelationsWindowsColumnTypes, PickQueryMetaResultRelationsWithDataReturnType, PickQueryMetaResultRelationsWithDataReturnTypeShape, PickQueryMetaResultReturnTypeWithDataWindows, PickQueryMetaResultReturnTypeWithDataWindowsTable, PickQueryMetaShapeRelationsWithData, PickQueryMetaTable, PickQueryMetaTableShape, PickQueryMetaTableShapeReturnTypeWithData, PickQueryMetaWithData, PickQueryMetaWithDataColumnTypes, PickQueryQ, PickQueryQAndBaseQuery, PickQueryQAndInternal, PickQueryRelations, PickQueryRelationsWithData, PickQueryShapeResultSinglePrimaryKey, PickQueryShapeSinglePrimaryKey, PickQuerySinglePrimaryKey, PickQueryWindows, PickQueryWithData, PickQueryWithDataColumnTypes, PointColumn, PolygonColumn, Query, QueryAfterHook, QueryArraysResult, QueryBase, QueryBaseThen, QueryBeforeHook, QueryData, QueryDataFromItem, QueryDataJoinTo, QueryDefaultReturnData, QueryError, QueryErrorName, QueryGet, QueryGetSelf, QueryHelperResult, QueryHookSelect, QueryHooks, QueryInternal, QueryLog, QueryLogObject, QueryLogOptions, QueryLogger, QueryMetaHasSelect, QueryMetaHasWhere, QueryMethods, QueryOrExpression, QueryOrExpressionBooleanOrNullResult, QueryResult, QueryReturnsAll, QueryScopeData, QueryScopes, QuerySourceItem, QueryTransform, QueryTransformFn, QueryUpsertOrCreate, QueryWithComputed, QueryWithTable, RawSQL, RealColumn, RecordOfColumnsShapeBase, RefExpression, RelationConfigBase, RelationConfigDataForCreate, RelationJoinQuery, RelationQuery, RelationQueryBase, RelationsBase, SearchArg, SearchMethods, SearchWeight, SearchWeightRecord, Select, SelectArg, SelectAs, SelectItem, SelectQueryData, SelectSubQueryResult, SelectableFromShape, SelectableOfType, SelectableOrExpression, SelectableOrExpressionOfType, SerialColumn, SerialColumnData, SetQueryKind, SetQueryKindResult, SetQueryReturnsAll, SetQueryReturnsAllKind, SetQueryReturnsAllKindResult, SetQueryReturnsColumnInfo, SetQueryReturnsColumnKind, SetQueryReturnsColumnKindResult, SetQueryReturnsColumnOptional, SetQueryReturnsColumnOrThrow, SetQueryReturnsOne, SetQueryReturnsOneKind, SetQueryReturnsOneKindResult, SetQueryReturnsOneOptional, SetQueryReturnsPluck, SetQueryReturnsPluckColumn, SetQueryReturnsPluckColumnKind, SetQueryReturnsPluckColumnKindResult, SetQueryReturnsRowCount, SetQueryReturnsRows, SetQueryReturnsValueOptional, SetQueryReturnsValueOrThrow, SetQueryReturnsVoid, SetQueryReturnsVoidKind, SetQueryTableAlias, ShapeColumnPrimaryKeys, ShapeUniqueColumns, SimpleJoinItem, SimpleJoinItemNonSubQueryArgs, SmallIntColumn, SmallSerialColumn, SortDir, SqlFn, SqlMethod, StringColumn$1 as StringColumn, TableData, TableDataFn, TableDataInput, TableDataItem, TableDataItemsUniqueColumnTuples, TableDataItemsUniqueColumns, TableDataItemsUniqueConstraints, TableDataMethods, TextBaseColumn, TextColumn, TextColumnData, Then, TimeColumn, TimestampColumn, TimestampTZColumn, ToSQLCtx, ToSQLOptions, ToSQLQuery, Transaction, TransactionAdapter, TransactionOptions, TransformMethods, TruncateQueryData, TsQueryColumn, TsVectorColumn, TypeParsers, UUIDColumn, UnhandledTypeError, Union, UnionArg, UnionItem, UnionKind, UnionSet, UniqueConstraints, UniqueQueryTypeOrExpression, UniqueTableDataItem, UnknownColumn, Update, UpdateArg, UpdateCtx, UpdateCtxCollect, UpdateData, UpdateQueryData, UpdateQueryDataItem, UpdateQueryDataObject, UpdateSelf, UpdatedAtDataInjector, UpsertArg, UpsertResult, UpsertThis, VarCharColumn, VirtualColumn, Where, WhereArg, WhereArgs, WhereInArg, WhereInColumn, WhereInItem, WhereInValues, WhereItem, WhereJsonPathEqualsItem, WhereNotArgs, WhereOnItem, WhereOnJoinItem, WhereQueryBuilder, WhereResult, WhereSearchItem, WhereSearchResult, WindowArg, WindowArgDeclaration, WindowDeclaration, WindowItem, WithArgsOptions, WithDataBase, WithDataItem, WithDataItems, WithItem, WithMethods, WithOptions, WithQueryBuilder, WithRecursiveOptions, WithResult, WithSqlResult, WrapQueryArg, XMLColumn, _initQueryBuilder, _queryAfterSaveCommit, _queryAll, _queryAs, _queryChangeCounter, _queryCreate, _queryCreateFrom, _queryCreateMany, _queryCreateManyFrom, _queryCreateManyRaw, _queryCreateRaw, _queryDefaults, _queryDelete, _queryExec, _queryFindBy, _queryFindByOptional, _queryGet, _queryGetOptional, _queryHookAfterCreate, _queryHookAfterCreateCommit, _queryHookAfterDelete, _queryHookAfterDeleteCommit, _queryHookAfterQuery, _queryHookAfterSave, _queryHookAfterUpdate, _queryHookAfterUpdateCommit, _queryHookBeforeCreate, _queryHookBeforeDelete, _queryHookBeforeQuery, _queryHookBeforeSave, _queryHookBeforeUpdate, _queryInsert, _queryInsertFrom, _queryInsertMany, _queryInsertManyFrom, _queryInsertManyRaw, _queryInsertRaw, _queryJoinOn, _queryJoinOnJsonPathEquals, _queryJoinOrOn, _queryOr, _queryOrNot, _queryRows, _querySelect, _queryTake, _queryTakeOptional, _queryUnion, _queryUpdate, _queryUpdateOrThrow, _queryUpdateRaw, _queryWhere, _queryWhereExists, _queryWhereIn, _queryWhereNot, _queryWhereNotSql, _queryWhereSql, addComputedColumns, addParserForRawExpression, addParserForSelectItem, addQueryOn, anyShape, checkIfASimpleQuery, cloneQuery, cloneQueryBaseUnscoped, columnCheckToCode, columnCode, columnForeignKeysToCode, columnIndexesToCode, columnsShapeToCode, constraintInnerToCode, constraintToCode, copyTableData, countSelect, createDb, defaultSchemaConfig, extendQuery, foreignKeyArgumentToCode, getClonedQueryData, getColumnInfo, getColumnTypes, getPrimaryKeys, getQueryAs, getShapeFromSelect, handleResult, identityToCode, indexInnerToCode, indexToCode, instantiateColumn, isDefaultTimeStamp, isQueryReturnsAll, isSelectingCount, joinSubQuery, logColors, logParamToLogObject, makeColumnTypes, makeColumnsByType, makeFnExpression, makeRegexToFindInSql, makeSQL, parseRecord, parseResult, parseTableData, parseTableDataInput, primaryKeyInnerToCode, processSelectArg, pushLimitSQL, pushQueryArray, pushQueryOn, pushQueryOrOn, pushQueryValue, pushTableDataCode, queryFrom, queryFromSql, queryJson, queryMethodByReturnType, queryTypeWithLimitOne, queryWrap, quote, quoteString, raw, referencesArgsToCode, resolveSubQueryCallback, saveSearchAlias, setParserForSelectedString, setQueryObjectValue, setQueryOperators, simplifyColumnDefault, sqlFn, sqlQueryArgsToExpression, tableDataMethods, templateLiteralToSQL, testTransaction, throwIfNoWhere, toSQL, toSQLCacheKey };
|
package/dist/index.js
CHANGED
|
@@ -2996,6 +2996,7 @@ if (process.versions.bun) {
|
|
|
2996
2996
|
};
|
|
2997
2997
|
}
|
|
2998
2998
|
Object.defineProperty(Then.prototype, "then", {
|
|
2999
|
+
configurable: true,
|
|
2999
3000
|
get: getThen,
|
|
3000
3001
|
set(value) {
|
|
3001
3002
|
Object.defineProperty(this, "then", {
|
|
@@ -4405,12 +4406,6 @@ const mergeColumnsSql = (quotedColumns2) => {
|
|
|
4405
4406
|
};
|
|
4406
4407
|
const encodeRow = (ctx, q, QueryClass, row, runtimeDefaults, quotedAs) => {
|
|
4407
4408
|
const arr = row.map((value) => {
|
|
4408
|
-
if (typeof value === "function") {
|
|
4409
|
-
value = resolveSubQueryCallback(
|
|
4410
|
-
q,
|
|
4411
|
-
value
|
|
4412
|
-
);
|
|
4413
|
-
}
|
|
4414
4409
|
if (value && typeof value === "object") {
|
|
4415
4410
|
if (value instanceof orchidCore.Expression) {
|
|
4416
4411
|
return value.toSQL(ctx, quotedAs);
|
|
@@ -4713,6 +4708,7 @@ const toSQL = (table, options) => {
|
|
|
4713
4708
|
return !(options == null ? void 0 : options.clearCache) && table.q[toSQLCacheKey] || (table.q[toSQLCacheKey] = makeSQL(table, options));
|
|
4714
4709
|
};
|
|
4715
4710
|
const makeSQL = (table, options) => {
|
|
4711
|
+
var _a;
|
|
4716
4712
|
const query = table.q;
|
|
4717
4713
|
const sql = [];
|
|
4718
4714
|
const values = (options == null ? void 0 : options.values) || [];
|
|
@@ -4726,24 +4722,21 @@ const makeSQL = (table, options) => {
|
|
|
4726
4722
|
pushWithSql(ctx, query.with);
|
|
4727
4723
|
}
|
|
4728
4724
|
if (query.type) {
|
|
4725
|
+
const tableName = (_a = table.table) != null ? _a : query.as;
|
|
4726
|
+
if (!tableName)
|
|
4727
|
+
throw new Error(`Table is missing for ${query.type}`);
|
|
4729
4728
|
if (query.type === "truncate") {
|
|
4730
|
-
|
|
4731
|
-
throw new Error("Table is missing for truncate");
|
|
4732
|
-
pushTruncateSql(ctx, table.table, query);
|
|
4729
|
+
pushTruncateSql(ctx, tableName, query);
|
|
4733
4730
|
return { text: sql.join(" "), values };
|
|
4734
4731
|
}
|
|
4735
4732
|
if (query.type === "columnInfo") {
|
|
4736
|
-
if (!table.table)
|
|
4737
|
-
throw new Error("Table is missing for truncate");
|
|
4738
4733
|
pushColumnInfoSql(ctx, table, query);
|
|
4739
4734
|
return { text: sql.join(" "), values };
|
|
4740
4735
|
}
|
|
4741
|
-
|
|
4742
|
-
throw new Error(`Table is missing for ${query.type}`);
|
|
4743
|
-
const quotedAs2 = `"${query.as || table.table}"`;
|
|
4736
|
+
const quotedAs2 = `"${query.as || tableName}"`;
|
|
4744
4737
|
if (query.type === "insert") {
|
|
4745
4738
|
return {
|
|
4746
|
-
hookSelect: pushInsertSql(ctx, table, query, `"${
|
|
4739
|
+
hookSelect: pushInsertSql(ctx, table, query, `"${tableName}"`),
|
|
4747
4740
|
text: sql.join(" "),
|
|
4748
4741
|
values
|
|
4749
4742
|
};
|
|
@@ -6155,9 +6148,17 @@ const processCreateItem = (q, item, rowIndex, ctx, encoders) => {
|
|
|
6155
6148
|
item,
|
|
6156
6149
|
rowIndex
|
|
6157
6150
|
);
|
|
6158
|
-
} else
|
|
6159
|
-
|
|
6160
|
-
|
|
6151
|
+
} else {
|
|
6152
|
+
if (typeof item[key] === "function") {
|
|
6153
|
+
item[key] = resolveSubQueryCallback(
|
|
6154
|
+
q,
|
|
6155
|
+
item[key]
|
|
6156
|
+
);
|
|
6157
|
+
}
|
|
6158
|
+
if (!ctx.columns.has(key) && (shape[key] && !shape[key].data.computed || shape === anyShape)) {
|
|
6159
|
+
ctx.columns.set(key, ctx.columns.size);
|
|
6160
|
+
encoders[key] = (_c = shape[key]) == null ? void 0 : _c.encodeFn;
|
|
6161
|
+
}
|
|
6161
6162
|
}
|
|
6162
6163
|
}
|
|
6163
6164
|
};
|
|
@@ -6363,6 +6364,22 @@ class Create {
|
|
|
6363
6364
|
* });
|
|
6364
6365
|
* ```
|
|
6365
6366
|
*
|
|
6367
|
+
* `create` and `insert` can be used in {@link WithMethods.with} expressions:
|
|
6368
|
+
*
|
|
6369
|
+
* ```ts
|
|
6370
|
+
* db.$queryBuilder
|
|
6371
|
+
* // create a record in one table
|
|
6372
|
+
* .with('a', db.table.select('id').create(data))
|
|
6373
|
+
* // create a record in other table using the first table record id
|
|
6374
|
+
* .with('b', (q) =>
|
|
6375
|
+
* db.otherTable.select('id').create({
|
|
6376
|
+
* ...otherData,
|
|
6377
|
+
* aId: () => q.from('a').get('id'),
|
|
6378
|
+
* }),
|
|
6379
|
+
* )
|
|
6380
|
+
* .from('b');
|
|
6381
|
+
* ```
|
|
6382
|
+
*
|
|
6366
6383
|
* @param data - data for the record, may have values, raw SQL, queries, relation operations.
|
|
6367
6384
|
*/
|
|
6368
6385
|
create(data) {
|
|
@@ -6591,18 +6608,18 @@ class Create {
|
|
|
6591
6608
|
*
|
|
6592
6609
|
* // single column:
|
|
6593
6610
|
* // (this requires a composite primary key or unique index, see below)
|
|
6594
|
-
* db.table.create(data).
|
|
6611
|
+
* db.table.create(data).onConflict('email').merge();
|
|
6595
6612
|
*
|
|
6596
6613
|
* // array of columns:
|
|
6597
|
-
* db.table.create(data).
|
|
6614
|
+
* db.table.create(data).onConflict(['email', 'name']).merge();
|
|
6598
6615
|
*
|
|
6599
6616
|
* // constraint name
|
|
6600
|
-
* db.table.create(data).
|
|
6617
|
+
* db.table.create(data).onConflict({ constraint: 'unique_index_name' }).merge();
|
|
6601
6618
|
*
|
|
6602
6619
|
* // raw SQL expression:
|
|
6603
6620
|
* db.table
|
|
6604
6621
|
* .create(data)
|
|
6605
|
-
* .
|
|
6622
|
+
* .onConflict(sql`(email) where condition`)
|
|
6606
6623
|
* .merge();
|
|
6607
6624
|
* ```
|
|
6608
6625
|
*
|
|
@@ -6871,6 +6888,19 @@ class Delete {
|
|
|
6871
6888
|
* // delete all users who have corresponding profile records:
|
|
6872
6889
|
* db.table.join(Profile, 'profile.userId', 'user.id').all().delete();
|
|
6873
6890
|
* ```
|
|
6891
|
+
*
|
|
6892
|
+
* `delete` can be used in {@link WithMethods.with} expressions:
|
|
6893
|
+
*
|
|
6894
|
+
* ```ts
|
|
6895
|
+
* db.$queryBuilder
|
|
6896
|
+
* // delete a record in one table
|
|
6897
|
+
* .with('a', db.table.find(1).select('id').delete())
|
|
6898
|
+
* // delete a record in other table using the first table record id
|
|
6899
|
+
* .with('b', (q) =>
|
|
6900
|
+
* db.otherTable.select('id').whereIn('aId', q.from('a').pluck('id')).delete(),
|
|
6901
|
+
* )
|
|
6902
|
+
* .from('b');
|
|
6903
|
+
* ```
|
|
6874
6904
|
*/
|
|
6875
6905
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
6876
6906
|
delete(..._args) {
|
|
@@ -9533,7 +9563,24 @@ class Update {
|
|
|
9533
9563
|
* })
|
|
9534
9564
|
* ```
|
|
9535
9565
|
*
|
|
9536
|
-
*
|
|
9566
|
+
* `update` can be used in {@link WithMethods.with} expressions:
|
|
9567
|
+
*
|
|
9568
|
+
* ```ts
|
|
9569
|
+
* db.$queryBuilder
|
|
9570
|
+
* // update record in one table
|
|
9571
|
+
* .with('a', db.table.find(1).select('id').update(data))
|
|
9572
|
+
* // update record in other table using the first table record id
|
|
9573
|
+
* .with('b', (q) =>
|
|
9574
|
+
* db.otherTable
|
|
9575
|
+
* .find(1)
|
|
9576
|
+
* .select('id')
|
|
9577
|
+
* .update({
|
|
9578
|
+
* ...otherData,
|
|
9579
|
+
* aId: () => q.from('a').get('id'),
|
|
9580
|
+
* }),
|
|
9581
|
+
* )
|
|
9582
|
+
* .from('b');
|
|
9583
|
+
* ```
|
|
9537
9584
|
*
|
|
9538
9585
|
* ### null, undefined, unknown columns
|
|
9539
9586
|
*
|