orange-orm 4.0.0 → 4.1.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/README.md +2 -2
- package/docs/changelog.md +6 -1
- package/package.json +2 -2
- package/src/ajv.d.ts +47 -0
- package/src/getManyDto/query/newSingleQuery.js +4 -3
- package/src/getTSDefinition.js +8 -4
- package/src/index.d.ts +5 -5
- package/src/map.d.ts +22 -14
- package/src/mssql/newTransaction.js +1 -0
- package/src/mySql/deleteFromSql.js +3 -1
- package/src/mySql/insertSql.js +14 -7
- package/src/mySql/lastInsertedSql.js +4 -1
- package/src/mySql/newTransaction.js +1 -0
- package/src/oracle/deleteFromSql.js +3 -1
- package/src/oracle/formatDateOut.js +3 -1
- package/src/oracle/insertSql.js +8 -5
- package/src/oracle/mergeSql.js +15 -12
- package/src/oracle/newTransaction.js +1 -0
- package/src/oracle/selectForUpdateSql.js +3 -1
- package/src/pg/deleteFromSql.js +3 -1
- package/src/pg/formatDateOut.js +3 -1
- package/src/pg/insertSql.js +12 -7
- package/src/pg/lastInsertedSql.js +4 -1
- package/src/pg/newTransaction.js +1 -0
- package/src/pg/selectForUpdateSql.js +3 -1
- package/src/sap/deleteFromSql.js +3 -1
- package/src/sap/formatDateOut.js +3 -1
- package/src/sap/insertSql.js +6 -3
- package/src/sap/mergeSql.js +14 -11
- package/src/sap/newTransaction.js +1 -0
- package/src/sap/selectForUpdateSql.js +3 -1
- package/src/sqlite/deleteFromSql.js +3 -1
- package/src/sqlite/insertSql.js +11 -8
- package/src/sqlite/newTransaction.js +1 -0
- package/src/sqlite/selectForUpdateSql.js +3 -1
- package/src/table/column/date/formatOut.js +4 -1
- package/src/table/column/equal.js +2 -1
- package/src/table/column/extractAlias.js +2 -0
- package/src/table/column/greaterThan.js +2 -1
- package/src/table/column/greaterThanOrEqual.js +2 -1
- package/src/table/column/in.js +2 -1
- package/src/table/column/json/formatOut.js +2 -1
- package/src/table/column/lessThan.js +2 -1
- package/src/table/column/lessThanOrEqual.js +3 -1
- package/src/table/column/newColumn.js +6 -3
- package/src/table/column/notEqual.js +2 -1
- package/src/table/column/string/containsCore.js +3 -1
- package/src/table/column/string/endsWithCore.js +3 -1
- package/src/table/column/string/iEqual.js +2 -1
- package/src/table/column/string/startsWithCore.js +2 -1
- package/src/table/commands/delete/singleCommand/selectSql.js +4 -2
- package/src/table/commands/insert/getSqlTemplate.js +4 -5
- package/src/table/commands/newGetLastInsertedCommandCore.js +7 -5
- package/src/table/commands/newUpdateCommandCore.js +5 -3
- package/src/table/count.js +3 -1
- package/src/table/newRelatedTable.js +0 -1
- package/src/table/query/extractOrderBy.js +5 -1
- package/src/table/query/newSingleQuery.js +3 -2
- package/src/table/query/singleQuery/columnSql/newShallowColumnSql.js +7 -3
- package/src/table/query/singleQuery/joinSql/newShallowJoinSql.js +3 -1
- package/src/table/query/singleQuery/joinSql/newShallowJoinSqlCore.js +4 -1
- package/src/table/query/singleQuery/newDiscriminatorSql.js +6 -2
- package/src/table/quote.js +11 -0
- package/src/table/readStream/extractOrderBy.js +5 -1
- package/src/table/readStream/mySql/query/newSubQueries/joinLegToQuery.js +2 -1
- package/src/table/readStream/mySql/query/singleQuery/newShallowColumnSql.js +2 -1
- package/src/table/readStream/pg/query/singleQuery/newShallowColumnSql.js +2 -1
- package/src/table/relatedTable/childColumn.js +10 -5
- package/src/table/relatedTable/columnAggregate.js +6 -2
- package/src/table/relatedTable/columnAggregateGroup.js +19 -13
- package/src/table/relatedTable/selectSql.js +7 -4
- package/src/table/relatedTable/whereSql.js +3 -0
- package/src/tedious/deleteFromSql.js +3 -1
- package/src/tedious/formatDateOut.js +3 -1
- package/src/tedious/formatJSONOut.js +1 -1
- package/src/tedious/getManyDto/query/newSingleQuery.js +1 -3
- package/src/tedious/getManyDto/query/singleQuery/newShallowColumnSql.js +6 -2
- package/src/tedious/insertSql.js +3 -5
- package/src/tedious/mergeSql.js +11 -12
- package/src/tedious/newTransaction.js +1 -0
- package/src/tedious/selectForUpdateSql.js +3 -1
- package/src/getManyDto/query/newColumnSql.js +0 -8
- package/src/getManyDto/query/singleQuery/newJoinedColumnSql.js +0 -25
- package/src/getManyDto/query/singleQuery/newShallowColumnSql.js +0 -25
- package/src/table/getManyDtoFast/getSubRows.js +0 -172
- package/src/table/getManyDtoFast/newQuery.js +0 -8
- package/src/table/getManyDtoFast/newQueryCore.js +0 -18
- package/src/table/getManyDtoFast/query/newSingleQuery.js +0 -20
- package/src/table/getManyDtoFast/query/newSubQueries/joinLegToQuery.js +0 -18
- package/src/table/getManyDtoFast/query/newSubQueries/manyLegToQuery.js +0 -20
- package/src/table/getManyDtoFast/query/newSubQueries/oneLegToQuery.js +0 -21
- package/src/table/getManyDtoFast/query/newSubQueries.js +0 -47
- package/src/table/getManyDtoFast/query/singleQuery/newShallowColumnSql.js +0 -21
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
var newSingleQuery = require('./query/newSingleQuery');
|
|
2
|
-
var extractOrderBy = require('../../table/query/extractOrderBy');
|
|
3
|
-
var newShallowJoinSql = require('../query/singleQuery/joinSql/newShallowJoinSql');
|
|
4
|
-
const executeQueries = require('../executeQueries');
|
|
5
|
-
|
|
6
|
-
async function getSubRows(parentRows, filter, span, alias, innerJoin, orderBy) {
|
|
7
|
-
var promises = [];
|
|
8
|
-
var c = {};
|
|
9
|
-
|
|
10
|
-
c.visitOne = function(leg) {
|
|
11
|
-
const rightAlias = alias;
|
|
12
|
-
var nextAlias = rightAlias + '_0';
|
|
13
|
-
var parentTable = leg.table;
|
|
14
|
-
var childColumns = parentTable._primaryColumns;
|
|
15
|
-
var parentColumns = leg.columns;
|
|
16
|
-
var shallowJoin = newShallowJoinSql(parentTable, parentColumns, childColumns, nextAlias, rightAlias);
|
|
17
|
-
var nextOrderBy = orderBy + ',' + extractOrderBy(leg.span.table, nextAlias, leg.span.orderBy).substring(9);
|
|
18
|
-
var nextInnerJoin = shallowJoin.append(innerJoin);
|
|
19
|
-
var query = newSingleQuery(leg.span.table, filter, leg.span, nextAlias, nextInnerJoin, nextOrderBy);
|
|
20
|
-
|
|
21
|
-
promises.push(executeQueries([query])
|
|
22
|
-
.then(res => res[0])
|
|
23
|
-
.then(async (rows) => {
|
|
24
|
-
importOne(rows, leg);
|
|
25
|
-
await getSubRows(rows, filter, leg.span, alias + '_0', nextOrderBy);
|
|
26
|
-
}));
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
c.visitMany = function(leg) {
|
|
30
|
-
const rightAlias = alias;
|
|
31
|
-
var nextAlias = rightAlias + '_0';
|
|
32
|
-
var parentTable = leg.table;
|
|
33
|
-
var childColumns = parentTable._primaryColumns;
|
|
34
|
-
var parentColumns = leg.columns;
|
|
35
|
-
var shallowJoin = newShallowJoinSql(parentTable, parentColumns, childColumns, nextAlias, rightAlias);
|
|
36
|
-
var nextOrderBy = orderBy + ',' + extractOrderBy(leg.span.table, nextAlias, leg.span.orderBy).substring(9);
|
|
37
|
-
var nextInnerJoin = shallowJoin.append(innerJoin);
|
|
38
|
-
var query = newSingleQuery(leg.span.table, filter, leg.span, nextAlias, nextInnerJoin, nextOrderBy);
|
|
39
|
-
|
|
40
|
-
promises.push(executeQueries([query])
|
|
41
|
-
.then(res => res[0])
|
|
42
|
-
.then(async (rows) => {
|
|
43
|
-
importMany(rows, leg);
|
|
44
|
-
await getSubRows(rows, filter, leg.span, alias + '_0', nextInnerJoin, nextOrderBy);
|
|
45
|
-
}));
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
c.visitJoin = function(leg) {
|
|
49
|
-
var nextAlias = alias + '_0';
|
|
50
|
-
var span = leg.span;
|
|
51
|
-
var parentTable = leg.table;
|
|
52
|
-
var childColumns = span.table._primaryColumns;
|
|
53
|
-
var parentColumns = leg.columns;
|
|
54
|
-
var shallowJoin = newShallowJoinSql(parentTable, childColumns, parentColumns, nextAlias, alias);
|
|
55
|
-
var nextOrderBy = orderBy + ',' + extractOrderBy(leg.span.table, nextAlias, leg.span.orderBy).substring(9);
|
|
56
|
-
var nextInnerJoin = shallowJoin.append(innerJoin);
|
|
57
|
-
var query = newSingleQuery(span.table, filter, span, nextAlias, nextInnerJoin, nextOrderBy);
|
|
58
|
-
|
|
59
|
-
promises.push(executeQueries([query])
|
|
60
|
-
.then(res => res[0])
|
|
61
|
-
.then(async (rows) => {
|
|
62
|
-
importJoined(rows, leg);
|
|
63
|
-
await getSubRows(rows, filter, leg.span, alias + '_0', nextInnerJoin, nextOrderBy);
|
|
64
|
-
}));
|
|
65
|
-
};
|
|
66
|
-
|
|
67
|
-
const legs = span.legs.toArray();
|
|
68
|
-
for (let i = 0; i < legs.length; i++) {
|
|
69
|
-
legs[i].accept(c);
|
|
70
|
-
await Promise.all(promises);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
function importOne(rows, leg) {
|
|
74
|
-
const prop = leg.name;
|
|
75
|
-
var parentColumns = leg.table._primaryColumns;
|
|
76
|
-
var childColumns = leg.columns;
|
|
77
|
-
importOneObjects(rows, prop, parentColumns, childColumns);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
function importMany(rows, leg) {
|
|
81
|
-
const prop = leg.name;
|
|
82
|
-
var parentColumns = leg.table._primaryColumns;
|
|
83
|
-
var childColumns = leg.columns;
|
|
84
|
-
let j = 0;
|
|
85
|
-
for (let i = 0; i < parentRows.length; i++) {
|
|
86
|
-
const array = [rows[j]];
|
|
87
|
-
while (j+1 < rows.length && isChild(parentRows[i], rows[j+1], parentColumns, childColumns)) {
|
|
88
|
-
j++;
|
|
89
|
-
array.push(rows[j]);
|
|
90
|
-
}
|
|
91
|
-
parentRows[i][prop] = array;
|
|
92
|
-
j++;
|
|
93
|
-
if (j >= rows.length)
|
|
94
|
-
return;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
function importJoined(rows, leg) {
|
|
100
|
-
const prop = leg.name;
|
|
101
|
-
var parentColumns = leg.columns;
|
|
102
|
-
var childColumns = leg.span.table._primaryColumns;
|
|
103
|
-
for (let i = 0; i < parentRows.length; i++) {
|
|
104
|
-
if (isChild(parentRows[i], rows[i], parentColumns, childColumns))
|
|
105
|
-
parentRows[i][prop] = rows[i];
|
|
106
|
-
else
|
|
107
|
-
parentRows[i][prop] = null;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
function importOneObjects(rows, prop, parentColumns, childColumns) {
|
|
112
|
-
for (let i = 0; i < parentRows.length; i++) {
|
|
113
|
-
if (isChild(parentRows[i], rows[i], parentColumns, childColumns))
|
|
114
|
-
parentRows[i][prop] = rows[i];
|
|
115
|
-
else
|
|
116
|
-
parentRows[i][prop] = null;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
// function importArrays(rows, prop, parentColumns, childColumns) {
|
|
122
|
-
// let j = 0;
|
|
123
|
-
// for (let i = 0; i < parentRows.length; i++) {
|
|
124
|
-
// const array = [rows[j]];
|
|
125
|
-
// while (isChild)
|
|
126
|
-
|
|
127
|
-
// // parentRows[i][prop] = [];
|
|
128
|
-
// // if (isChild(parentRows[i], rows[j], parentColumns, childColumns)) {
|
|
129
|
-
// // parentRows[i][prop] = rows[j];
|
|
130
|
-
// // j++;
|
|
131
|
-
// // if (j == parentRows.length)
|
|
132
|
-
// // return;
|
|
133
|
-
// // while (isChild(parentRows[i], rows[j], parentColumns, childColumns)) {
|
|
134
|
-
// // if (j == parentRows.length)
|
|
135
|
-
// // return;
|
|
136
|
-
// // parentRows[i][prop] = rows[j];
|
|
137
|
-
// // j++;
|
|
138
|
-
// // }
|
|
139
|
-
// // }
|
|
140
|
-
// }
|
|
141
|
-
// let j = 0;
|
|
142
|
-
// for (let i = 0; i < rows.length; i++) {
|
|
143
|
-
// const row = rows[i];
|
|
144
|
-
// while (j < parentRows.length && !isChild(parentRows[j], row, parentColumns, childColumns)) {
|
|
145
|
-
// if (!parentRows[j][prop])
|
|
146
|
-
// parentRows[j][prop] = [];
|
|
147
|
-
// j++;
|
|
148
|
-
// }
|
|
149
|
-
// if (j < parentRows.length)
|
|
150
|
-
// if (parentRows[j][prop])
|
|
151
|
-
// parentRows[j][prop].push(row);
|
|
152
|
-
// else
|
|
153
|
-
// parentRows[j][prop] = [row];
|
|
154
|
-
// else
|
|
155
|
-
// return;
|
|
156
|
-
|
|
157
|
-
// }
|
|
158
|
-
// }
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
function isChild(parentRow, row, parentColumns, childColumns) {
|
|
162
|
-
for (let i = 0; i < childColumns.length; i++) {
|
|
163
|
-
if (row[childColumns[i].alias] == parentRow[parentColumns[i].alias])
|
|
164
|
-
continue;
|
|
165
|
-
return false;
|
|
166
|
-
}
|
|
167
|
-
return true;
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
module.exports = getSubRows;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
var newSingleQuery = require('./query/newSingleQuery');
|
|
2
|
-
var extractFilter = require('../../table/query/extractFilter');
|
|
3
|
-
var extractOrderBy = require('../../table/query/extractOrderBy');
|
|
4
|
-
var extractLimit = require('../../table/query/extractLimit');
|
|
5
|
-
var extractOffset = require('../../table/query/extractOffset');
|
|
6
|
-
var newParameterized = require('../../table/query/newParameterized');
|
|
7
|
-
|
|
8
|
-
function newQuery(table,filter,span,alias) {
|
|
9
|
-
filter = extractFilter(filter);
|
|
10
|
-
var orderBy = extractOrderBy(table,alias,span.orderBy);
|
|
11
|
-
var limit = extractLimit(span);
|
|
12
|
-
var offset = extractOffset(span);
|
|
13
|
-
var subQueries = '';
|
|
14
|
-
var query = newSingleQuery(table,filter,span,alias,subQueries,orderBy,limit,offset);
|
|
15
|
-
return newParameterized(query.sql(), query.parameters);
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
module.exports = newQuery;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
var newColumnSql = require('./singleQuery/newShallowColumnSql');
|
|
2
|
-
var newWhereSql = require('../../../table/query/singleQuery/newWhereSql');
|
|
3
|
-
var negotiateLimit = require('../../../table/query/singleQuery/negotiateLimit');
|
|
4
|
-
var newParameterized = require('../../../table/query/newParameterized');
|
|
5
|
-
|
|
6
|
-
function _new(table, filter, span, alias, innerJoin, orderBy, limit, offset = '') {
|
|
7
|
-
|
|
8
|
-
var name = table._dbName;
|
|
9
|
-
var columnSql = newColumnSql(table, alias, span);
|
|
10
|
-
var whereSql = newWhereSql(table, filter, alias);
|
|
11
|
-
var safeLimit = negotiateLimit(limit);
|
|
12
|
-
|
|
13
|
-
return newParameterized('select ' + safeLimit + ' ' + columnSql + ' from ' + name + ' ' + alias)
|
|
14
|
-
.append(innerJoin)
|
|
15
|
-
.append(whereSql)
|
|
16
|
-
.append(orderBy + offset);
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
module.exports = _new;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
var newShallowJoinSql = require('../../../../table/query/singleQuery/joinSql/newShallowJoinSqlCore');
|
|
2
|
-
var newQuery = require('../../newQueryCore');
|
|
3
|
-
var newParameterized = require('../../../../table/query/newParameterized');
|
|
4
|
-
|
|
5
|
-
function joinLegToQuery(parentAlias,leg,_legNo) {
|
|
6
|
-
var childAlias = parentAlias + leg.name;
|
|
7
|
-
var span = leg.span;
|
|
8
|
-
var parentTable = leg.table;
|
|
9
|
-
var childColumns = span.table._primaryColumns;
|
|
10
|
-
var parentColumns = leg.columns;
|
|
11
|
-
|
|
12
|
-
var shallowJoin = newShallowJoinSql(parentTable,childColumns,parentColumns,childAlias,parentAlias);
|
|
13
|
-
var filter = newParameterized(shallowJoin);
|
|
14
|
-
var query = newQuery(span.table,filter,span,childAlias);
|
|
15
|
-
return query.prepend(',JSON_QUERY((').append(` FOR JSON PATH, INCLUDE_NULL_VALUES, WITHOUT_ARRAY_WRAPPER)) "${leg.name}"`);
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
module.exports = joinLegToQuery;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
var newShallowJoinSql = require('../../../../table/query/singleQuery/joinSql/newShallowJoinSqlCore');
|
|
2
|
-
var newQuery = require('../../newQueryCore');
|
|
3
|
-
var newParameterized = require('../../../../table/query/newParameterized');
|
|
4
|
-
var util = require('util');
|
|
5
|
-
|
|
6
|
-
function manyLegToQuery(rightAlias, leg, legNo) {
|
|
7
|
-
var leftAlias = rightAlias + 'x' + legNo;
|
|
8
|
-
var span = leg.span;
|
|
9
|
-
var rightTable = leg.table;
|
|
10
|
-
var rightColumns = rightTable._primaryColumns;
|
|
11
|
-
var leftColumns = leg.columns;
|
|
12
|
-
|
|
13
|
-
var shallowJoin = newShallowJoinSql(rightTable, leftColumns, rightColumns, leftAlias, rightAlias);
|
|
14
|
-
var filter = newParameterized(shallowJoin);
|
|
15
|
-
var query = newQuery(span.table, filter, span, leftAlias);
|
|
16
|
-
return util.format(',JSON_QUERY( coalesce((%s FOR JSON PATH, INCLUDE_NULL_VALUES),\'[]\')) "%s"', query.sql(), leg.name);
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
module.exports = manyLegToQuery;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
var newShallowJoinSql = require('../../../../table/query/singleQuery/joinSql/newShallowJoinSqlCore');
|
|
2
|
-
var newQuery = require('../../newQueryCore');
|
|
3
|
-
var newParameterized = require('../../../../table/query/newParameterized');
|
|
4
|
-
var util = require('util');
|
|
5
|
-
|
|
6
|
-
function oneLegToQuery(rightAlias,leg,legNo) {
|
|
7
|
-
var leftAlias = rightAlias + 'x' + legNo;
|
|
8
|
-
var span = leg.span;
|
|
9
|
-
var rightTable = leg.table;
|
|
10
|
-
var rightColumns = rightTable._primaryColumns;
|
|
11
|
-
var leftColumns = leg.columns;
|
|
12
|
-
|
|
13
|
-
var shallowJoin = newShallowJoinSql(rightTable,leftColumns,rightColumns,leftAlias,rightAlias);
|
|
14
|
-
var filter = newParameterized(shallowJoin);
|
|
15
|
-
var query = newQuery(span.table,filter,span,leftAlias);
|
|
16
|
-
var sql = 'SELECT TOP 1' + query.sql().substring(6);
|
|
17
|
-
return util.format(',JSON_QUERY((%s FOR JSON PATH, INCLUDE_NULL_VALUES, WITHOUT_ARRAY_WRAPPER)) "%s"',sql, leg.name );
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
module.exports = oneLegToQuery;
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
var joinLegToQuery = _joinLegToQuery;
|
|
2
|
-
var oneLegToQuery = _oneLegToQuery;
|
|
3
|
-
var manyLegToQuery = _manyLegToQuery;
|
|
4
|
-
|
|
5
|
-
function newSubQueries(table,span,alias) {
|
|
6
|
-
var result = [];
|
|
7
|
-
var c = {};
|
|
8
|
-
var _legNo;
|
|
9
|
-
|
|
10
|
-
c.visitJoin = function(leg) {
|
|
11
|
-
result.push(joinLegToQuery( alias,leg,_legNo));
|
|
12
|
-
};
|
|
13
|
-
c.visitOne = function(leg) {
|
|
14
|
-
result.push(oneLegToQuery( alias,leg,_legNo));
|
|
15
|
-
};
|
|
16
|
-
c.visitMany = function(leg) {
|
|
17
|
-
result.push(manyLegToQuery( alias,leg,_legNo));
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
span.legs.forEach(onEachLeg);
|
|
21
|
-
|
|
22
|
-
function onEachLeg(leg,legNo) {
|
|
23
|
-
_legNo = legNo;
|
|
24
|
-
leg.accept(c);
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
return result.join('');
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
function _joinLegToQuery() {
|
|
31
|
-
joinLegToQuery = require('./newSubQueries/joinLegToQuery');
|
|
32
|
-
return joinLegToQuery.apply(null,arguments);
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
function _oneLegToQuery() {
|
|
36
|
-
oneLegToQuery = require('./newSubQueries/oneLegToQuery');
|
|
37
|
-
return oneLegToQuery.apply(null,arguments);
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
function _manyLegToQuery() {
|
|
41
|
-
manyLegToQuery = require('./newSubQueries/manyLegToQuery');
|
|
42
|
-
return manyLegToQuery.apply(null,arguments);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
module.exports = newSubQueries;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
var util = require('util');
|
|
2
|
-
|
|
3
|
-
function _new(table, alias, span) {
|
|
4
|
-
let columnsMap = span.columns;
|
|
5
|
-
var columnFormat = '%s as "%s"';
|
|
6
|
-
var columns = table._columns;
|
|
7
|
-
var sql = '';
|
|
8
|
-
var separator = alias + '.';
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
for (var i = 0; i < columns.length; i++) {
|
|
12
|
-
var column = columns[i];
|
|
13
|
-
if (!columnsMap || (columnsMap.get(column))) {
|
|
14
|
-
sql = sql + separator + util.format(columnFormat, column._dbName, column.alias);
|
|
15
|
-
separator = ',' + alias + '.';
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
return sql;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
module.exports = _new;
|