UNPKG

node-qsb2

Version:

Node.js Query String Builder (QSB) for MySQL/MariaDB, Forked from node-qsb

105 lines (89 loc) 3.71 kB
var qsb = require("../"); console.log("==== INSERT ======"); var qs1 = new qsb() .insert("tableName") .values(["colName"], ["Value"]) .build() .printString(); //INSERT INTO `tableName`(`colName`) VALUES ('Value'); var params = { cols: ["col1", "col2", "col3", "col4"], vals: [null, "val2", "val3", 4000], }; var qs2 = new qsb() .insert("tableName") .values(params.cols, params.vals) .build() .printString(); //INSERT INTO `tableName`(`col1`, `col2`, `col3`, `col4`) VALUES ('val1', 'val2', 'val3', '4000'); qs2.addValues(params.vals).build().printString(); //INSERT INTO `tableName`(`col1`, `col2`, `col3`, `col4`) VALUES ('val1', 'val2', 'val3', '4000'),('val1', 'val2', 'val3', '4000'); console.log("\n==== UPDATE ======"); var qs = new qsb() .update("tableName") .set("name", "Yowu") .where("idx", "=", "423") .build() .printString(); //UPDATE `tableName` SET `name` = 'Yowu' WHERE `idx` = '423'; qs.set("email", "uyu423@gmail.com").build().printString(); //UPDATE `tableName` SET `name` = 'Yowu', `email` = 'uyu423@gmail.com' WHERE `idx` = '423'; console.log("\n==== forceQuery ======"); var qs = new qsb().forceQuery("select * from tableName").printString(); //select * from tableName console.log("\n==== SELECT ======"); var qs = new qsb().select("tableName").where("idx", ">", "10").build(); qs.printString(); //SELECT * FROM `tableName` WHERE `idx` > '10'; console.log(qs.returnString()); //SELECT * FROM `tableName` WHERE `idx` > '10'; qs.where("name", "=", "Yowu").build(); console.log(qs.returnString()); //SELECT * FROM `tableName` WHERE `idx` > '10' AND `name` = 'Yowu'; qs.whereOr("name", "=", "Yu Yongwoo").build(); console.log(qs.returnString()); //SELECT * FROM `tableName` WHERE `idx` > '10' AND `name` = 'Yowu' OR `name` = 'Yu Yongwoo'; console.log("\n==== DELETE ======"); var qs = new qsb() .delete("tableName") .where("idx", "=", 10) .build() .printString(); //DELETE FROM `tableName` WHERE `idx` = '10'; console.log("\n==== SELECT NOT USING STAR ======"); var qs = new qsb().select("tableName").get("col1").get("col2").build(); console.log(qs.returnString()); //SELECT `col1`, `col2` FROM `tableName`; console.log("\n==== JOIN ======"); try { var qs = new qsb() .select("tableName", "TN1") .join("tableName2", "TN2") .where("TN1.idx", "<=", 10) .whereOr("TN2.idx", "=", "TN1.idx") .where("TN1.idx", "in", [1, 2, 3]) .where("TN1.idx", "between", '"2020-03-01" and "2020-05-31"') .where("TN1.idx", "IS NULL") .build() .printString(); //SELECT * FROM `tableName` `TN1` JOIN `tableName2` `TN2` WHERE `TN1`.`idx` <= '10' OR `TN2`.`idx` = 'TN1.idx'; var qsJoin = new qsb() .select("test", "TN1") .get("TN1.id") .get("TN1.name") .get("TN2.name2") .leftJoin( "SELECT * FROM test2 where id <= 3", "TN2", "TN1.id=TN2.id", true ) .build() .printString(); } catch (e) { console.error(e); } console.log("\n==== LIMIT ======"); qs.limit(0, 10).build(); console.log(qs.returnString()); //SELECT * FROM `tableName` `TN1` JOIN `tableName2` `TN2` WHERE `TN1`.`idx` <= '10' OR `TN2`.`idx` = 'TN1.idx' LIMIT '0', '10'; console.log("\n==== ORDER BY ======"); qs.orderBy("TN1.idx", "DESC").orderBy("TN2.name", "ASC").build(); console.log(qs.returnString()); //SELECT * FROM `tableName` `TN1` JOIN `tableName2` `TN2` WHERE `TN1`.`idx` <= '10' OR `TN2`.`idx` = 'TN1.idx' ORDER BY `TN1`.`idx` desc LIMIT '0', '10';