0.0.32 • Published 5 years ago
dabs v0.0.32
DaBs
Simple SQL Query Builder.
Uses MySQL2 as DB engine.
Quickstart
npm install dabs
###CONNECT
const dabs = require("dabs");
const db = await dabs.connect("mysql://user:pass@host/database");
###SELECT
const u = db.table("users");
const n = db.table("data");
let q = u.select( u.name, u.mail )
.join(n, n.uid.eq(u.uid) )
.fields( n.title.as("title") )
.fields( db.fn.COUNT(n.id).as("alias_count") )
.fields( db.fn.AVG(n.field).as("alias_avg") )
.where( u.uid.equals(db._("placeholder")) )
.where( n.id.gt(10) )
.sortBy( n.id.asc(), u.uid.desc() )
.groupBy( n.id )
.having( db.$("alias_avg").gt(100) );
let result = await q.exec({ placeholder: 5 });
console.info(q.toString());
SELECT
`users`.`name`,`users`.`mail`,`data`.`title` AS title,COUNT(`data`.`id`) AS alias_count,AVG(`data`.`field`) AS alias_avg
FROM users
JOIN `data` ON (`data`.`uid` = `users`.`uid`)
WHERE (`users`.`uid` = ? AND `data`.`id` > ?)
GROUP BY `data`.`id`
HAVING (`alias_avg` > ?)
ORDER BY `data`.`id` ASC,`users`.`uid` DESC
###INSERT
u.insert()
.fields(u.name, u.email)
.exec({ name: "test", email: "test@test.com"})
.then((data) => console.log(data))
.catch((e) => console.log(e));
###UPDATE
n.update()
.fields( n.f1 )
.where( n.f1.equals(db._("placeholder")) )
.whereAny( n.f2.equals("x"), n.f3.equals("y") )
.exec({ f1: "a specific value", placeholder: "test" })
.then((data) => console.log(data))
.catch((err) => console.log(err));
###DELETE
n.delete()
.where( n.f1.equals(db._("placeholder")) )
.exec({ placeholder: "what" })
.then((data) => console.log(data))
.catch((err) => console.log(err));
0.0.32
5 years ago
0.0.31
5 years ago
0.0.30
5 years ago
0.0.28
5 years ago
0.0.29
5 years ago
0.0.27
5 years ago
0.0.26
6 years ago
0.0.25
6 years ago
0.0.24
6 years ago
0.0.23
6 years ago
0.0.22
6 years ago
0.0.21
6 years ago
0.0.20
6 years ago
0.0.19
6 years ago
0.0.18
6 years ago
0.0.17
6 years ago
0.0.16
6 years ago
0.0.15
6 years ago
0.0.13
6 years ago
0.0.14
6 years ago
0.0.12
6 years ago
0.0.11
6 years ago
0.0.10
6 years ago
0.0.9
6 years ago
0.0.8
6 years ago
0.0.7
6 years ago
0.0.6
6 years ago
0.0.5
6 years ago
0.0.4
6 years ago
0.0.3
6 years ago
0.0.2
7 years ago
0.0.1
7 years ago
0.0.0
7 years ago