Class for connection management
Parameters
config
object connection parametersReturn an existing query builder instance
Returns QueryBuilder The Query Builder object
Extends QueryBuilderBase
Main object that builds SQL queries.
Parameters
Driver
Driver The syntax driver for the databaseAdapter
Adapter The database module adapter for running queriesRun a set of queries from a file
Parameters
file
string The path to the sql fileseparator
string The character separating each query (optional, default ';'
)Returns Promise The result of all the queries
Run an arbitrary sql query. Run as a prepared statement.
Parameters
Returns Promise Promise with result of query
Reset the object state for a new query
Returns void
Empties the selected database table
Parameters
table
string the name of the table to truncateReturns (void | Promise) Returns a promise if no callback is supplied
Closes the database connection for the current adapter
Returns void
Specify rows to select in the query
Parameters
Examples
query.select('foo, bar'); // Select multiple fields with a string
query.select(['foo', 'bar']); // Select multiple fileds with an array
Returns QueryBuilder The Query Builder object, for chaining
Specify the database table to select from
Parameters
tableName
String The table to use for the current queryExamples
query.from('tableName');
query.from('tableName t'); // Select the table with an alias
Returns QueryBuilder The Query Builder object, for chaining
Add a ‘like/ and like’ clause to the query
Parameters
field
String The name of the field to compare toval
String The value to compare topos
String The placement of the wildcard character(s): before, after, or both (optional, default both
)Returns QueryBuilder The Query Builder object, for chaining
Add a ‘not like/ and not like’ clause to the query
Parameters
field
String The name of the field to compare toval
String The value to compare topos
String The placement of the wildcard character(s): before, after, or both (optional, default both
)Returns QueryBuilder The Query Builder object, for chaining
Add an ‘or like’ clause to the query
Parameters
field
String The name of the field to compare toval
String The value to compare topos
String The placement of the wildcard character(s): before, after, or both (optional, default both
)Returns QueryBuilder The Query Builder object, for chaining
Add an ‘or not like’ clause to the query
Parameters
field
String The name of the field to compare toval
String The value to compare topos
String The placement of the wildcard character(s): before, after, or both (optional, default both
)Returns QueryBuilder The Query Builder object, for chaining
Add a ‘having’ clause
Parameters
key
(String | Object) The name of the field and the comparision operator, or an objectval
(String | Number)? The value to compare if the value of key is a string (optional, default null
)Returns QueryBuilder The Query Builder object, for chaining
Add an ‘or having’ clause
Parameters
key
(String | Object) The name of the field and the comparision operator, or an objectval
(String | Number)? The value to compare if the value of key is a string (optional, default null
)Returns QueryBuilder The Query Builder object, for chaining
Set a ‘where’ clause
Parameters
key
(String | Object) The name of the field and the comparision operator, or an objectval
(String | Number)? The value to compare if the value of key is a stringReturns QueryBuilder The Query Builder object, for chaining
Set a ‘or where’ clause
Parameters
key
(String | Object) The name of the field and the comparision operator, or an objectval
(String | Number)? The value to compare if the value of key is a stringReturns QueryBuilder The Query Builder object, for chaining
Select a field that is Null
Parameters
field
String The name of the field that has a NULL valueReturns QueryBuilder The Query Builder object, for chaining
Specify that a field IS NOT NULL
Parameters
field
String The name so the field that is not to be nullReturns QueryBuilder The Query Builder object, for chaining
Field is null prefixed with ‘OR’
Parameters
field
String The name of the fieldReturns QueryBuilder The Query Builder object, for chaining
Field is not null prefixed with ‘OR’
Parameters
field
String The name of the fieldReturns QueryBuilder The Query Builder object, for chaining
Set a ‘where in’ clause
Parameters
Returns QueryBuilder The Query Builder object, for chaining
Set a ‘or where in’ clause
Parameters
Returns QueryBuilder The Query Builder object, for chaining
Set a ‘where not in’ clause
Parameters
Returns QueryBuilder The Query Builder object, for chaining
Set a ‘or where not in’ clause
Parameters
Returns QueryBuilder The Query Builder object, for chaining
Set values for insertion or updating
Parameters
Examples
query.set('foo', 'bar'); // Set a key, value pair
query.set({foo:'bar'}); // Set with an object
Returns QueryBuilder The Query Builder object, for chaining
Add a join clause to the query
Parameters
table
String The table you are joiningcond
String The join condition.type
String The type of join, which defaults to inner (optional, default 'inner'
)Returns QueryBuilder The Query Builder object, for chaining
Group the results by the selected field(s)
Parameters
Returns QueryBuilder The Query Builder object, for chaining
Order the results by the selected field(s)
Parameters
field
String The field(s) to order bytype
String The order direction, ASC or DESC (optional, default 'ASC'
)Returns QueryBuilder The Query Builder object, for chaining
Put a limit on the query
Parameters
Returns QueryBuilder The Query Builder object, for chaining
Adds an open paren to the current query for logical grouping
Returns QueryBuilder The Query Builder object, for chaining
Adds an open paren to the current query for logical grouping, prefixed with ‘OR’
Returns QueryBuilder The Query Builder object, for chaining
Adds an open paren to the current query for logical grouping, prefixed with ‘OR NOT’
Returns QueryBuilder The Query Builder object, for chaining
Ends a logical grouping started with one of the groupStart methods
Returns QueryBuilder The Query Builder object, for chaining
Get the results of the compiled query
Parameters
table
String? The table to select fromlimit
Number? A limit for the queryoffset
Number? An offset for the queryExamples
query.get('table_name').then(promiseCallback); // Get all the rows in the table
query.get('table_name', 5); // Get 5 rows from the table
query.get(); // Get the results of a query generated with other methods
Returns Promise<Result> Promise containing the result of the query
Run the generated insert query
Parameters
table
String The table to insert intodata
Object? Data to insert, if not already added with the ‘set’ methodReturns Promise<Result> Promise containing the result of the query
Insert multiple sets of rows at a time
Parameters
table
String The table to insert intodata
Array The array of objects containing data rows to insertExamples
query.insertBatch('foo',[{id:1,val:'bar'},{id:2,val:'baz'}])
.then(promiseCallback);
Returns Promise<Result> Promise containing the result of the query
Run the generated update query
Parameters
table
String The table to insert intodata
Object? Data to insert, if not already added with the ‘set’ methodReturns Promise<Result> Promise containing the result of the query
Creates a batch update sql statement
Parameters
table
String The table to updatedata
Object Batch insert dataupdateKey
String The field in the table to compare against for updatingReturns Number Number of rows updated
Run the generated delete query
Parameters
Returns Promise<Result> Promise containing the result of the query
Return generated select query SQL
Parameters
table
String? the name of the table to retrieve fromreset
Boolean Whether to reset the query builder so another query can be built (optional, default true
)Returns String The compiled sql statement
Return generated insert query SQL
Parameters
table
String the name of the table to insert intoreset
Boolean Whether to reset the query builder so another query can be built (optional, default true
)Returns String The compiled sql statement
Return generated update query SQL
Parameters
table
String the name of the table to updatereset
Boolean Whether to reset the query builder so another query can be built (optional, default true
)Returns String The compiled sql statement
Return generated delete query SQL
Parameters
table
String the name of the table to delete fromreset
Boolean Whether to reset the query builder so another query can be built (optional, default true
)Returns String The compiled sql statement
Query result object
Parameters
rows
Array the data rows of the result (optional, default []
)columns
Array the column names in the result (optional, default []
)Get the number of rows returned by the query
Returns Number the number of rows in the result
Get the number of columns returned by the query
Returns Number the number of columns in the result