@stamhoofd/sql 2.61.1 → 2.63.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.
@@ -27,6 +27,11 @@ export declare class SQLMultiplicationSign implements SQLExpression {
27
27
  export declare class SQLMinusSign implements SQLExpression {
28
28
  getSQL(): SQLQuery;
29
29
  }
30
+ export declare class SQLGreatest implements SQLExpression {
31
+ expressions: SQLDynamicExpression[];
32
+ constructor(...expressions: SQLDynamicExpression[]);
33
+ getSQL(options?: SQLExpressionOptions): SQLQuery;
34
+ }
30
35
  export declare class SQLCalculation implements SQLExpression {
31
36
  expressions: SQLExpression[];
32
37
  constructor(...expressions: SQLExpression[]);
@@ -37,6 +42,11 @@ export declare class SQLSum implements SQLExpression {
37
42
  constructor(expression: SQLExpression);
38
43
  getSQL(options?: SQLExpressionOptions): SQLQuery;
39
44
  }
45
+ export declare class SQLMin implements SQLExpression {
46
+ expression: SQLExpression;
47
+ constructor(expression: SQLExpression);
48
+ getSQL(options?: SQLExpressionOptions): SQLQuery;
49
+ }
40
50
  export declare class SQLSelectAs implements SQLExpression {
41
51
  expression: SQLExpression;
42
52
  as: SQLAlias;
@@ -1 +1 @@
1
- {"version":3,"file":"SQLExpressions.d.ts","sourceRoot":"","sources":["../../src/SQLExpressions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SQLExpressions.d.ts","sourceRoot":"","sources":["../../src/SQLExpressions.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SQLTableExpression = exports.SQLColumnExpression = exports.SQLWildcardSelectExpression = exports.SQLArray = exports.SQLSafeValue = exports.SQLScalar = exports.SQLNow = exports.SQLNull = exports.SQLJSONValue = exports.SQLCast = exports.SQLAge = exports.SQLConcat = exports.SQLAlias = exports.SQLAssignment = exports.SQLSelectAs = exports.SQLSum = exports.SQLCalculation = exports.SQLMinusSign = exports.SQLMultiplicationSign = exports.SQLPlusSign = exports.SQLLower = exports.SQLCount = exports.SQLDistinct = void 0;
3
+ exports.SQLTableExpression = exports.SQLColumnExpression = exports.SQLWildcardSelectExpression = exports.SQLArray = exports.SQLSafeValue = exports.SQLScalar = exports.SQLNow = exports.SQLNull = exports.SQLJSONValue = exports.SQLCast = exports.SQLAge = exports.SQLConcat = exports.SQLAlias = exports.SQLAssignment = exports.SQLSelectAs = exports.SQLMin = exports.SQLSum = exports.SQLCalculation = exports.SQLGreatest = exports.SQLMinusSign = exports.SQLMultiplicationSign = exports.SQLPlusSign = exports.SQLLower = exports.SQLCount = exports.SQLDistinct = void 0;
4
4
  exports.scalarToSQLExpression = scalarToSQLExpression;
5
5
  exports.readDynamicSQLExpression = readDynamicSQLExpression;
6
6
  const simple_database_1 = require("@simonbackx/simple-database");
@@ -82,6 +82,20 @@ class SQLMinusSign {
82
82
  }
83
83
  }
84
84
  exports.SQLMinusSign = SQLMinusSign;
85
+ class SQLGreatest {
86
+ expressions;
87
+ constructor(...expressions) {
88
+ this.expressions = expressions;
89
+ }
90
+ getSQL(options) {
91
+ return (0, SQLExpression_1.joinSQLQuery)([
92
+ 'GREATEST(',
93
+ (0, SQLExpression_1.joinSQLQuery)(this.expressions.map(e => readDynamicSQLExpression(e).getSQL(options)), ', '),
94
+ ')',
95
+ ]);
96
+ }
97
+ }
98
+ exports.SQLGreatest = SQLGreatest;
85
99
  class SQLCalculation {
86
100
  expressions;
87
101
  constructor(...expressions) {
@@ -106,6 +120,20 @@ class SQLSum {
106
120
  }
107
121
  }
108
122
  exports.SQLSum = SQLSum;
123
+ class SQLMin {
124
+ expression;
125
+ constructor(expression) {
126
+ this.expression = expression;
127
+ }
128
+ getSQL(options) {
129
+ return (0, SQLExpression_1.joinSQLQuery)([
130
+ 'MIN(',
131
+ this.expression.getSQL(options),
132
+ ')',
133
+ ]);
134
+ }
135
+ }
136
+ exports.SQLMin = SQLMin;
109
137
  class SQLSelectAs {
110
138
  expression;
111
139
  as;
@@ -1 +1 @@
1
- {"version":3,"file":"SQLExpressions.js","sourceRoot":"","sources":["../../src/SQLExpressions.ts"],"names":[],"mappings":";;;AAMA,sDAMC;AAED,4DAaC;AA3BD,iEAAuD;AACvD,mDAA8F;AAK9F,SAAgB,qBAAqB,CAAC,CAAwB;IAC1D,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACb,OAAO,IAAI,OAAO,EAAE,CAAC;IACzB,CAAC;IAED,OAAO,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;AAC5B,CAAC;AAED,SAAgB,wBAAwB,CAAC,CAAuB;IAC5D,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QACnB,OAAO,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACb,OAAO,IAAI,OAAO,EAAE,CAAC;IACzB,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,EAAE,CAAC;QAChD,OAAO,CAAC,CAAC;IACb,CAAC;IAED,OAAO,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;AAC5B,CAAC;AACD,MAAa,WAAW;IACpB,UAAU,CAAgB;IAE1B,YAAY,UAAyB;QACjC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,IAAA,4BAAY,EAAC;YAChB,UAAU;YACV,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;SAClC,CAAC,CAAC;IACP,CAAC;CACJ;AAbD,kCAaC;AACD,MAAa,QAAQ;IACjB,UAAU,CAAuB;IAEjC,YAAY,aAAmC,IAAI;QAC/C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,IAAA,4BAAY,EAAC;YAChB,QAAQ;YACR,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG;YACvD,GAAG;SACN,CAAC,CAAC;IACP,CAAC;CACJ;AAdD,4BAcC;AAED,MAAa,QAAQ;IACjB,UAAU,CAAgB;IAE1B,YAAY,UAAyB;QACjC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,IAAA,4BAAY,EAAC;YAChB,QAAQ;YACR,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;YAC/B,GAAG;SACN,CAAC,CAAC;IACP,CAAC;CACJ;AAdD,4BAcC;AAED,MAAa,WAAW;IACpB,MAAM;QACF,OAAO,GAAG,CAAC;IACf,CAAC;CACJ;AAJD,kCAIC;AAED,MAAa,qBAAqB;IAC9B,MAAM;QACF,OAAO,GAAG,CAAC;IACf,CAAC;CACJ;AAJD,sDAIC;AAED,MAAa,YAAY;IACrB,MAAM;QACF,OAAO,GAAG,CAAC;IACf,CAAC;CACJ;AAJD,oCAIC;AAED,MAAa,cAAc;IACvB,WAAW,CAAkB;IAE7B,YAAY,GAAG,WAA4B;QACvC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACnC,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,IAAA,4BAAY,EAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC3E,CAAC;CACJ;AAVD,wCAUC;AAED,MAAa,MAAM;IACf,UAAU,CAAgB;IAE1B,YAAY,UAAyB;QACjC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,IAAA,4BAAY,EAAC;YAChB,MAAM;YACN,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;YAC/B,GAAG;SACN,CAAC,CAAC;IACP,CAAC;CACJ;AAdD,wBAcC;AACD,MAAa,WAAW;IACpB,UAAU,CAAgB;IAC1B,EAAE,CAAW;IAEb,YAAY,UAAyB,EAAE,EAAY;QAC/C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,IAAA,4BAAY,EAAC;YAChB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;YAC/B,MAAM;YACN,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;SAC1B,CAAC,CAAC;IACP,CAAC;CACJ;AAhBD,kCAgBC;AAED,MAAa,aAAa;IACtB,GAAG,CAAgB;IACnB,KAAK,CAAgB;IAErB,YAAY,GAAkB,EAAE,KAAoB;QAChD,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,IAAA,4BAAY,EAAC;YAChB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;YACxB,KAAK;YACL,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;SAC7B,CAAC,CAAC;IACP,CAAC;CACJ;AAhBD,sCAgBC;AAED,MAAa,QAAQ;IACjB,IAAI,CAAS;IAEb,YAAY,IAAY;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,0BAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;CACJ;AAVD,4BAUC;AAED,MAAa,SAAS;IAClB,WAAW,CAAkB;IAE7B,YAAY,GAAG,WAA4B;QACvC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACnC,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,IAAA,4BAAY,EAAC;YAChB,SAAS;YACT,IAAA,4BAAY,EAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC;YAChE,GAAG;SACN,CAAC,CAAC;IACP,CAAC;CACJ;AAdD,8BAcC;AAED,MAAa,MAAM;IACf,UAAU,CAAgB;IAE1B,YAAY,UAAyB;QACjC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,IAAA,4BAAY,EAAC;YAChB,uBAAuB;YACvB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;YAC/B,mBAAmB;SACtB,CAAC,CAAC;IACP,CAAC;CACJ;AAdD,wBAcC;AAED,MAAa,OAAO;IAChB,KAAK,CAAgB;IACrB,EAAE,GAAG,MAAM,CAAC;IAEZ,YAAY,KAAoB,EAAE,EAAE,GAAG,MAAM;QACzC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,IAAA,4BAAY,EAAC;YAChB,QAAQ;YACR,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;YAC1B,MAAM;YACN,IAAI,CAAC,EAAE;YACP,GAAG;SACN,CAAC,CAAC;IACP,CAAC;CACJ;AAlBD,0BAkBC;AAED,MAAa,YAAY;IACrB,KAAK,CAAsB;IAE3B,YAAY,KAA0B;QAClC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC;IAChE,CAAC;CACJ;AAVD,oCAUC;AAED,MAAa,OAAO;IAChB,MAAM,CAAC,OAA8B;QACjC,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAJD,0BAIC;AAED,MAAa,MAAM;IACf,MAAM,CAAC,OAA8B;QACjC,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ;AAJD,wBAIC;AAED,MAAa,SAAS;IAClB,KAAK,CAAiB;IAEtB,YAAY,KAAqB;QAC7B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO;YACH,KAAK,EAAE,GAAG;YACV,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;SACvB,CAAC;IACN,CAAC;CACJ;AAbD,8BAaC;AAED,MAAa,YAAY;IACrB,KAAK,CAAkB;IAEvB,YAAY,KAAsB;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;CACJ;AAVD,oCAUC;AAED,MAAa,QAAQ;IACjB,KAAK,CAAmB;IAExB,YAAY,KAAuB;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO;YACH,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;SACvB,CAAC;IACN,CAAC;CACJ;AAbD,4BAaC;AAED,MAAa,2BAA2B;IACpC,SAAS,CAAU;IAEnB,YAAY,SAAkB;QAC1B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,0BAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,EAAE,gBAAgB,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IACvF,CAAC;CACJ;AAVD,kEAUC;AAED,MAAa,mBAAmB;IAC5B,SAAS,CAAU;IACnB,MAAM,CAAS;IAIf,YAAY,iBAAyB,EAAE,MAAe;QAClD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,GAAG,iBAAiB,CAAC;YAChC,OAAO;QACX,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,OAAO,0BAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,EAAE,gBAAgB,IAAI,EAAE,CAAC,GAAG,GAAG,GAAG,0BAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvH,CAAC;CACJ;AAlBD,kDAkBC;AAED,MAAa,kBAAkB;IAC3B,SAAS,CAAU;IACnB,KAAK,CAAS;IAId,YAAY,gBAAwB,EAAE,KAAc;QAChD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACtB,IAAI,CAAC,KAAK,GAAG,gBAAgB,CAAC;YAC9B,OAAO;QACX,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,gBAAgB,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAClB,OAAO,0BAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,0BAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,0BAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACnF,CAAC;CACJ;AArBD,gDAqBC"}
1
+ {"version":3,"file":"SQLExpressions.js","sourceRoot":"","sources":["../../src/SQLExpressions.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { SQLExpression, SQLExpressionOptions, SQLQuery } from "./SQLExpression";
2
- import { SQLAlias, SQLAssignment, SQLScalarValue, SQLTableExpression } from "./SQLExpressions";
1
+ import { SQLExpression, SQLExpressionOptions, SQLQuery } from './SQLExpression';
2
+ import { SQLAlias, SQLAssignment, SQLScalarValue, SQLTableExpression } from './SQLExpressions';
3
3
  export declare class SQLInsert implements SQLExpression {
4
4
  _columns: SQLExpression[];
5
5
  _values: SQLExpression[][];
@@ -9,7 +9,7 @@ export declare class SQLInsert implements SQLExpression {
9
9
  constructor(tableName: SQLTableExpression | string);
10
10
  clone(): this;
11
11
  columns(...columns: (SQLExpression | string)[]): this;
12
- values(...values: (SQLExpression | SQLScalarValue)[][]): this;
12
+ values(...values: (SQLExpression | SQLScalarValue | null)[][]): this;
13
13
  as(alias: string): this;
14
14
  onDuplicateKeyUpdate(...assignments: SQLAssignment[]): this;
15
15
  getSQL(options?: SQLExpressionOptions): SQLQuery;
@@ -1 +1 @@
1
- {"version":3,"file":"SQLInsert.d.ts","sourceRoot":"","sources":["../../src/SQLInsert.ts"],"names":[],"mappings":"AACA,OAAO,EAAoD,aAAa,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAClI,OAAO,EAAyB,QAAQ,EAAE,aAAa,EAAuB,cAAc,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3I,qBAAa,SAAU,YAAW,aAAa;IAC3C,QAAQ,EAAE,aAAa,EAAE,CAAK;IAC9B,OAAO,EAAE,aAAa,EAAE,EAAE,CAAK;IAC/B,GAAG,EAAE,QAAQ,GAAC,IAAI,CAAO;IACzB,KAAK,EAAE,kBAAkB,CAAC;IAC1B,qBAAqB,EAAE,aAAa,EAAE,GAAC,IAAI,CAAO;gBAEtC,SAAS,EAAE,kBAAkB,GAAC,MAAM;IAIhD,KAAK,IAAI,IAAI;IAMb,OAAO,CAAC,GAAG,OAAO,EAAE,CAAC,aAAa,GAAC,MAAM,CAAC,EAAE,GAAG,IAAI;IAKnD,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,aAAa,GAAC,cAAc,CAAC,EAAE,EAAE,GAAG,IAAI;IAY3D,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKvB,oBAAoB,CAAC,GAAG,WAAW,EAAE,aAAa,EAAE,GAAG,IAAI;IAK3D,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;IAoD1C,MAAM,IAAI,OAAO,CAAC;QAAC,QAAQ,EAAE,GAAG,CAAC;QAAA,YAAY,EAAE,MAAM,CAAC;KAAC,CAAC;CAQjE"}
1
+ {"version":3,"file":"SQLInsert.d.ts","sourceRoot":"","sources":["../../src/SQLInsert.ts"],"names":[],"mappings":"AACA,OAAO,EAAoD,aAAa,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAClI,OAAO,EAAyB,QAAQ,EAAE,aAAa,EAAuB,cAAc,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3I,qBAAa,SAAU,YAAW,aAAa;IAC3C,QAAQ,EAAE,aAAa,EAAE,CAAM;IAC/B,OAAO,EAAE,aAAa,EAAE,EAAE,CAAM;IAChC,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAQ;IAC5B,KAAK,EAAE,kBAAkB,CAAC;IAC1B,qBAAqB,EAAE,aAAa,EAAE,GAAG,IAAI,CAAQ;gBAEzC,SAAS,EAAE,kBAAkB,GAAG,MAAM;IAIlD,KAAK,IAAI,IAAI;IAMb,OAAO,CAAC,GAAG,OAAO,EAAE,CAAC,aAAa,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI;IAKrD,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,aAAa,GAAG,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI;IAYpE,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKvB,oBAAoB,CAAC,GAAG,WAAW,EAAE,aAAa,EAAE,GAAG,IAAI;IAK3D,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;IAoD1C,MAAM,IAAI,OAAO,CAAC;QAAE,QAAQ,EAAE,GAAG,CAAC;QAAA,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;CAMlE"}
@@ -23,7 +23,7 @@ class SQLInsert {
23
23
  return this;
24
24
  }
25
25
  values(...values) {
26
- this._values = values.map(v => {
26
+ this._values = values.map((v) => {
27
27
  if (v.length !== this._columns.length) {
28
28
  throw new Error('Invalid number of values. Expected ' + this._columns.length + ' but got ' + v.length);
29
29
  }
@@ -50,13 +50,13 @@ class SQLInsert {
50
50
  query.push((0, SQLExpression_1.joinSQLQuery)([
51
51
  '(',
52
52
  (0, SQLExpression_1.joinSQLQuery)(columns, ', '),
53
- ')'
53
+ ')',
54
54
  ]));
55
55
  query.push('VALUES');
56
56
  query.push((0, SQLExpression_1.joinSQLQuery)(this._values.map(values => (0, SQLExpression_1.joinSQLQuery)([
57
57
  '(',
58
58
  (0, SQLExpression_1.joinSQLQuery)(values.map(v => v.getSQL(options)), ', '),
59
- ')'
59
+ ')',
60
60
  ])), ', '));
61
61
  if (this._as !== null) {
62
62
  query.push('AS', this._as.getSQL(options));
@@ -1 +1 @@
1
- {"version":3,"file":"SQLInsert.js","sourceRoot":"","sources":["../../src/SQLInsert.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SQLInsert.js","sourceRoot":"","sources":["../../src/SQLInsert.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stamhoofd/sql",
3
- "version": "2.61.1",
3
+ "version": "2.63.0",
4
4
  "main": "./dist/index.js",
5
5
  "types": "./dist/index.d.ts",
6
6
  "license": "UNLICENCED",
@@ -15,5 +15,5 @@
15
15
  "publishConfig": {
16
16
  "access": "public"
17
17
  },
18
- "gitHead": "f092f61cf3641682fb5a5a9cb50c7977b1e350ef"
18
+ "gitHead": "0dd71a1869c5931dcf844dea1ecd2167819dc5c6"
19
19
  }
@@ -26,6 +26,7 @@ export function readDynamicSQLExpression(s: SQLDynamicExpression): SQLExpression
26
26
 
27
27
  return new SQLScalar(s);
28
28
  }
29
+
29
30
  export class SQLDistinct implements SQLExpression {
30
31
  expression: SQLExpression;
31
32
 
@@ -90,6 +91,22 @@ export class SQLMinusSign implements SQLExpression {
90
91
  }
91
92
  }
92
93
 
94
+ export class SQLGreatest implements SQLExpression {
95
+ expressions: SQLDynamicExpression[];
96
+
97
+ constructor(...expressions: SQLDynamicExpression[]) {
98
+ this.expressions = expressions;
99
+ }
100
+
101
+ getSQL(options?: SQLExpressionOptions): SQLQuery {
102
+ return joinSQLQuery([
103
+ 'GREATEST(',
104
+ joinSQLQuery(this.expressions.map(e => readDynamicSQLExpression(e).getSQL(options)), ', '),
105
+ ')',
106
+ ]);
107
+ }
108
+ }
109
+
93
110
  export class SQLCalculation implements SQLExpression {
94
111
  expressions: SQLExpression[];
95
112
 
@@ -117,6 +134,23 @@ export class SQLSum implements SQLExpression {
117
134
  ]);
118
135
  }
119
136
  }
137
+
138
+ export class SQLMin implements SQLExpression {
139
+ expression: SQLExpression;
140
+
141
+ constructor(expression: SQLExpression) {
142
+ this.expression = expression;
143
+ }
144
+
145
+ getSQL(options?: SQLExpressionOptions): SQLQuery {
146
+ return joinSQLQuery([
147
+ 'MIN(',
148
+ this.expression.getSQL(options),
149
+ ')',
150
+ ]);
151
+ }
152
+ }
153
+
120
154
  export class SQLSelectAs implements SQLExpression {
121
155
  expression: SQLExpression;
122
156
  as: SQLAlias;
package/src/SQLInsert.ts CHANGED
@@ -1,36 +1,36 @@
1
- import { Database } from "@simonbackx/simple-database";
2
- import { isSQLExpression, joinSQLQuery, normalizeSQLQuery, SQLExpression, SQLExpressionOptions, SQLQuery } from "./SQLExpression";
3
- import { scalarToSQLExpression, SQLAlias, SQLAssignment, SQLColumnExpression, SQLScalarValue, SQLTableExpression } from "./SQLExpressions";
1
+ import { Database } from '@simonbackx/simple-database';
2
+ import { isSQLExpression, joinSQLQuery, normalizeSQLQuery, SQLExpression, SQLExpressionOptions, SQLQuery } from './SQLExpression';
3
+ import { scalarToSQLExpression, SQLAlias, SQLAssignment, SQLColumnExpression, SQLScalarValue, SQLTableExpression } from './SQLExpressions';
4
4
 
5
5
  export class SQLInsert implements SQLExpression {
6
- _columns: SQLExpression[] = []
7
- _values: SQLExpression[][] = []
8
- _as: SQLAlias|null = null
6
+ _columns: SQLExpression[] = [];
7
+ _values: SQLExpression[][] = [];
8
+ _as: SQLAlias | null = null;
9
9
  _into: SQLTableExpression;
10
- _onDuplicateKeyUpdate: SQLAssignment[]|null = null
10
+ _onDuplicateKeyUpdate: SQLAssignment[] | null = null;
11
11
 
12
- constructor(tableName: SQLTableExpression|string) {
12
+ constructor(tableName: SQLTableExpression | string) {
13
13
  this._into = typeof tableName === 'string' ? new SQLTableExpression(tableName) : tableName;
14
14
  }
15
15
 
16
16
  clone(): this {
17
- const c = new SQLInsert(this._into)
17
+ const c = new SQLInsert(this._into);
18
18
  Object.assign(c, this);
19
19
  return c as any;
20
20
  }
21
21
 
22
- columns(...columns: (SQLExpression|string)[]): this {
23
- this._columns = columns.map(c => typeof c === 'string' ? new SQLColumnExpression(c) : c ) as any;
22
+ columns(...columns: (SQLExpression | string)[]): this {
23
+ this._columns = columns.map(c => typeof c === 'string' ? new SQLColumnExpression(c) : c) as any;
24
24
  return this;
25
25
  }
26
26
 
27
- values(...values: (SQLExpression|SQLScalarValue)[][]): this {
28
- this._values = values.map(v => {
27
+ values(...values: (SQLExpression | SQLScalarValue | null)[][]): this {
28
+ this._values = values.map((v) => {
29
29
  if (v.length !== this._columns.length) {
30
- throw new Error('Invalid number of values. Expected ' + this._columns.length + ' but got ' + v.length)
30
+ throw new Error('Invalid number of values. Expected ' + this._columns.length + ' but got ' + v.length);
31
31
  }
32
32
 
33
- return v.map(c => isSQLExpression(c) ? c : scalarToSQLExpression(c))
33
+ return v.map(c => isSQLExpression(c) ? c : scalarToSQLExpression(c));
34
34
  });
35
35
 
36
36
  return this;
@@ -45,65 +45,63 @@ export class SQLInsert implements SQLExpression {
45
45
  this._onDuplicateKeyUpdate = assignments;
46
46
  return this;
47
47
  }
48
-
48
+
49
49
  getSQL(options?: SQLExpressionOptions): SQLQuery {
50
- options = options ?? {}
50
+ options = options ?? {};
51
51
  options.defaultNamespace = (this._into as any).namespace ?? (this._into).table ?? undefined;
52
52
 
53
53
  const query: SQLQuery[] = [
54
54
  'INSERT INTO',
55
55
  this._into.getSQL(options),
56
- ]
56
+ ];
57
57
 
58
- const columns = this._columns.map(c => c.getSQL(options))
58
+ const columns = this._columns.map(c => c.getSQL(options));
59
59
  query.push(
60
60
  joinSQLQuery([
61
61
  '(',
62
62
  joinSQLQuery(columns, ', '),
63
- ')'
64
- ])
65
- )
63
+ ')',
64
+ ]),
65
+ );
66
66
 
67
67
  query.push(
68
- 'VALUES'
69
- )
68
+ 'VALUES',
69
+ );
70
70
 
71
71
  query.push(
72
72
  joinSQLQuery(
73
- this._values.map(values =>
73
+ this._values.map(values =>
74
74
  joinSQLQuery([
75
75
  '(',
76
76
  joinSQLQuery(values.map(v => v.getSQL(options)), ', '),
77
- ')'
78
- ])
77
+ ')',
78
+ ]),
79
79
  ),
80
- ', '
81
- )
82
- )
80
+ ', ',
81
+ ),
82
+ );
83
83
 
84
84
  if (this._as !== null) {
85
85
  query.push(
86
- 'AS',
87
- this._as.getSQL(options)
88
- )
86
+ 'AS',
87
+ this._as.getSQL(options),
88
+ );
89
89
  }
90
90
 
91
91
  if (this._onDuplicateKeyUpdate !== null) {
92
- query.push('ON DUPLICATE KEY UPDATE')
92
+ query.push('ON DUPLICATE KEY UPDATE');
93
93
  query.push(
94
- joinSQLQuery(this._onDuplicateKeyUpdate.map(a => a.getSQL(options)), ', ')
95
- )
94
+ joinSQLQuery(this._onDuplicateKeyUpdate.map(a => a.getSQL(options)), ', '),
95
+ );
96
96
  }
97
-
97
+
98
98
  return joinSQLQuery(query, ' ');
99
99
  }
100
-
101
- async insert(): Promise<{insertId: any;affectedRows: number;}> {
102
- const {query, params} = normalizeSQLQuery(this.getSQL())
100
+
101
+ async insert(): Promise<{ insertId: any;affectedRows: number }> {
102
+ const { query, params } = normalizeSQLQuery(this.getSQL());
103
103
  console.log(query, params);
104
104
  const result = await Database.insert(query, params);
105
105
  return result[0];
106
106
  }
107
-
108
-
109
107
  }