1.0.5 • Published 6 years ago

just-sql-query-builder v1.0.5

Weekly downloads
3
License
APLv2
Repository
github
Last release
6 years ago

Just a simple SQL query builder

Simple library to help with creating reusable SQL queries independent from DB.

  • helps create reusable SQL queries
  • extensible
  • SQL database agnostic

Usage example

SELECT

const jsqb = require('just-sql-query-builder');

const qb = new jsqb.SelectQueryBuilder('test_table');
qb.andCondition('field1 = ?', [10]);
qb.groupResultsBy('group_field');
qb.havingResults('field1 = "foo"');
qb.orderResultsBy('order_field ASC');
qb.setLimit(10);
qb.setOffset(1);

console.log('Query: ' + qb.buildAndGetQuery());
console.log('Params: ' + qb.getConditionParams());

Result "Query: "

SELECT * FROM test_table WHERE field1 = ? GROUP BY group_field HAVING field1 = "foo" ORDER BY order_field ASC LIMIT 10 OFFSET 1

Result "Params: "

[10]

UPDATE

const jsqb = require('just-sql-query-builder');

const qb = new jsqb.UpdateQueryBuilder('test_table');
qb.addValue('field1', 'foo');
qb.andCondition('field3 = ?', [30]);
qb.setLimit(10);

console.log('Query: ' + qb.buildAndGetQuery());
console.log('Params: ' + qb.getConditionParams());

Result "Query: "

UPDATE test_table SET field1 = ? WHERE field3 = ? LIMIT 10

Result "Params: "

['foo', 30]

DELETE

const jsqb = require('just-sql-query-builder');

const qb = new jsqb.DeleteQueryBuilder('test_table');
qb.andCondition('field1 = ?', ['foo']);

console.log('Query: ' + qb.buildAndGetQuery());
console.log('Params: ' + qb.getConditionParams());

Result "Query: "

DELETE FROM test_table WHERE field1 = ?

Result "Params: "

['foo']

INSERT

const jsqb = require('just-sql-query-builder');

const qb = new jsqb.InsertQueryBuilder('test_table', ['field1', 'field2']);

console.log('Query: ' + qb.buildAndGetQuery());

Result "Query: "

INSERT INTO test_table (field1,field2) VALUES (?,?)