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.3.0 to 0.3.1

80

lib/QueryBuilder.js

@@ -114,15 +114,3 @@ !function(){

// 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._renderUpdateOrDeleteFilter(query, parameters);

@@ -217,3 +205,18 @@ return {SQLString: SQLString, parameters: parameters};

// we need to render a subquery for every selected field (primary key)
SQLString += ' WHERE ' + query.select.map(function(column) {
SQLString += ' WHERE ' + this._renderUpdateOrDeleteFilter(query, parameters);
return {SQLString: SQLString, parameters: parameters};
}
/**
* render the filter for the update query
*
* @param <Object> query
* @param <Object> parameters object, values that must be
* escaped an inserted into the SQL
*/
, _renderUpdateOrDeleteFilter: function(query, parameters) {
return query.select.map(function(column) {
return this._escapeId(query.from)+'.'+this._escapeId(column)+' IN('+this._render('query', {

@@ -230,5 +233,3 @@ select : [column]

}, parameters).SQLString+')'
}.bind(this)).join(' AND ');
return {SQLString: SQLString, parameters: parameters};
}.bind(this)).join(' AND ')
}

@@ -238,3 +239,2 @@

/**

@@ -302,15 +302,45 @@ * add update specific commands

// render order statement
if(query.order && query.order.length) SQLString += ' ORDER BY ' + (this._renderOrder(query.order || []) || 1);
// order & group
SQLString += this._renderOrderAndGroup(query);
// limit & offset
SQLString += this._renderLimit(query);
return {SQLString: SQLString, parameters: parameters};
}
/**
* render the ôrder ang group statements
*
* @param <Object> query
*/
, _renderOrderAndGroup: function(query) {
var str = '';
// render group statement
if(query.group && query.group.length) SQLString += ' GROUP BY ' + (this._renderGroup(query.group ) || 1);
if(query.group && query.group.length) str += ' GROUP BY ' + (this._renderGroup(query.group ) || 1);
// render order statement
if(query.order && query.order.length) str += ' ORDER BY ' + (this._renderOrder(query.order || []) || 1);
// limit & offset
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 str;
}
return {SQLString: SQLString, parameters: parameters};
/**
* render thje limit / offset statements
*
* @param <Object> query
*/
, _renderLimit: function(query) {
var str = '';
if(query.limit && !isNaN(parseInt(query.limit, 10))) str += ' LIMIT ' + parseInt(query.limit, 10);
if(query.offset && !isNaN(parseInt(query.offset, 10))) str += ' OFFSET ' + parseInt(query.offset, 10);
return str;
}

@@ -317,0 +347,0 @@

{
"name" : "ee-query-builder"
, "description" : "SQL query builder for the ee-orm package. Implents the postgres syntax."
, "version" : "0.3.0"
, "version" : "0.3.1"
, "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