@hero-page/hero-sql-querybuilder
v1.0.0
Published
A library that assists in building dynamic SQL queries with various conditions and options
Downloads
4
Maintainers
Readme
This entire repository was created completely with AI, using the hero-ai-package-creator, which is open-source, uses GPT-4, and is written & maintained by Sam Chahine ❣️🧞♀️
hero-sql-querybuilder
A library that assists in building dynamic SQL queries with various conditions and options.
Functions
select(columns, tableName)
Builds a simple SELECT query with given columns and table name. Handles edge cases where columns are empty or not an array, and table name is not a string. For example, select(['id', 'name'], 'users')
returns 'SELECT id, name FROM users'.
where(condition(s))
Builds a WHERE clause with given condition(s). Handles single conditions, multiple conditions with AND or OR, and nested conditions. For example, where('id = 1')
returns 'WHERE id = 1'; where([{cond: 'id = 1', op: 'AND', cond: 'name = John'}])
returns 'WHERE id = 1 AND name = John'.
orderBy(column(s), sortOrder)
Builds an ORDER BY clause with given column(s) and optional sort order. Handles single column or multiple columns with ASC/DESC. For example, orderBy('name', 'DESC')
returns 'ORDER BY name DESC'.
groupBy(column(s))
Builds a GROUP BY clause with given column(s). Handles single column, multiple columns, and checks for valid column names. For example, groupBy(['name', 'age'])
returns 'GROUP BY name, age'.
limit(limitValue)
Builds a LIMIT clause with the given limit value. Handles edge cases where limit is not a valid number or is less than 1. For example, limit(10)
returns 'LIMIT 10'.
insert(tableName, columnNames, values)
Builds a basic INSERT query with given table name, column names, and value(s). Handles single/multiple rows and checks for matching column and value count. For example, insert('users', ['name', 'age'], [['John', '30'], ['Jane', '25']])
returns "INSERT INTO users (name, age) VALUES ('John', '30'), ('Jane', '25')".
update(tableName, columnValuePair, whereClause)
Builds an UPDATE query with given table name, column and value pairs, and optional WHERE clause. Handles single/multiple column-value pairs and checks for matching column and value count. For example, update('users', {name: 'John', age: '30'}, 'id = 1')
returns "UPDATE users SET name = 'John', age = '30' WHERE id = 1".
Sam Chahine, at Hero