Socket
Socket
Sign inDemoInstall

ee-query-builder

Package Overview
Dependencies
Maintainers
1
Versions
44
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ee-query-builder - npm Package Compare versions

Comparing version 0.2.1 to 0.2.2

82

lib/QueryBuilder.js

@@ -94,29 +94,16 @@ !function(){

if (this._type === 'postgres' && (query.limit >= 0 || query.offset >= 0)) {
// postgres cannot limit deletes, we have to build a subselect
// we need to render a subquery for every selected field (primary key)
SQLString += ' WHERE ' + query.select.map(function(column) {
return this._escapeId(query.from)+'.'+this._escapeId(column)+' IN('+this._render('query', {
select : [column]
, from : query.from
, database : query.database
, filter : query.filter
, join : query.join
, order : query.order
, group : query.group
, limit : query.limit
, offset : query.offset
}, parameters).SQLString+')'
}.bind(this)).join(' AND ');
}
else {
// render filter (where statement)
if (query.join && query.join.length) SQLString += this._renderJoin(query.database, query.join);
if (query.order && query.order.length) SQLString += ' ORDER BY ' + (this._renderOrder(query.order || []) || 1);
SQLString += ' WHERE ' + (this._renderFilter(parameters, query.filter || {}) || 1);
if (query.limit && !isNaN(parseInt(query.limit, 10))) SQLString += ' LIMIT ' + parseInt(query.limit, 10);
if (query.offset && !isNaN(parseInt(query.offset, 10))) SQLString += ' OFFSET ' + parseInt(query.offset, 10);
}
// we need to render a subquery for every selected field (primary key)
SQLString += ' WHERE ' + query.select.map(function(column) {
return this._escapeId(query.from)+'.'+this._escapeId(column)+' IN('+this._render('query', {
select : [column]
, from : query.from
, database : query.database
, filter : query.filter
, join : query.join
, order : query.order
, group : query.group
, limit : query.limit
, offset : query.offset
}, parameters).SQLString+')'
}.bind(this)).join(' AND ');

@@ -174,31 +161,18 @@ return {SQLString: SQLString, parameters: parameters};

if (this._type === 'postgres' && (query.limit >= 0 || query.offset >= 0)) {
// postgres cannot limit updates, we have to build a subselect
// we need to render a subquery for every selected field (primary key)
SQLString += ' WHERE ' + query.select.map(function(column) {
return this._escapeId(query.from)+'.'+this._escapeId(column)+' IN('+this._render('query', {
select : [column]
, from : query.from
, database : query.database
, filter : query.filter
, join : query.join
, order : query.order
, group : query.group
, limit : query.limit
, offset : query.offset
}, parameters).SQLString+')'
}.bind(this)).join(' AND ');
}
else {
// render filter (where statement)
if (query.join && query.join.length) SQLString += this._renderJoin(query.database, query.join);
if (query.order && query.order.length) SQLString += ' ORDER BY ' + (this._renderOrder(query.order || []) || 1);
// we need to render a subquery for every selected field (primary key)
SQLString += ' WHERE ' + query.select.map(function(column) {
return this._escapeId(query.from)+'.'+this._escapeId(column)+' IN('+this._render('query', {
select : [column]
, from : query.from
, database : query.database
, filter : query.filter
, join : query.join
, order : query.order
, group : query.group
, limit : query.limit
, offset : query.offset
}, parameters).SQLString+')'
}.bind(this)).join(' AND ');
SQLString += ' WHERE ' + (this._renderFilter(parameters, query.filter || {}) || 1);
if (query.limit && !isNaN(parseInt(query.limit, 10))) SQLString += ' LIMIT ' + parseInt(query.limit, 10);
if (query.offset && !isNaN(parseInt(query.offset, 10))) SQLString += ' OFFSET ' + parseInt(query.offset, 10);
}
return {SQLString: SQLString, parameters: parameters};

@@ -205,0 +179,0 @@ }

{
"name" : "ee-query-builder"
, "description" : "query builder for ee-orm"
, "version" : "0.2.1"
, "version" : "0.2.2"
, "homepage" : "https://github.com/eventEmitter/ee-query-builder"

@@ -6,0 +6,0 @@ , "author" : "Michael van der Weg <michael@eventemitter.com> (http://eventemitter.com/)"

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc