mm_mysql 1.7.9 → 1.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/package.json +1 -1
  2. package/sql.js +8 -2
  3. package/test.js +52 -34
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mm_mysql",
3
- "version": "1.7.9",
3
+ "version": "1.8.1",
4
4
  "description": "这是超级美眉mysql帮助函数模块,用于便捷操作mysql,使用await方式,可以避免嵌套函数",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/sql.js CHANGED
@@ -480,7 +480,10 @@ Sql.prototype.toWhere = function(obj, like) {
480
480
  } else if (k.endWith('_not')) {
481
481
  where += " and " + escapeId(k.replace('_not', "")) + " != " + val;
482
482
  } else if (k.endWith('_has')) {
483
- where += " and " + escapeId(k.replace('_has', "")) + " in (" + val.trim("'") + ")";
483
+ var vals = val.trim("'").split(',').map((o) => {
484
+ return "'" + o + "'"
485
+ });
486
+ where += " and " + escapeId(k.replace('_has', "")) + " in (" + vals.join(',') + ")";
484
487
  } else if (k.endWith('_like')) {
485
488
  where += " and " + escapeId(k) + " LIKE '%" + val.trim("'") + "%'";
486
489
  } else if (typeof(val) === "string" && !/^[0-9]+$/.test(val)) {
@@ -503,7 +506,10 @@ Sql.prototype.toWhere = function(obj, like) {
503
506
  } else if (k.endWith('_not')) {
504
507
  where += " and " + escapeId(k.replace('_not', "")) + " != " + val;
505
508
  } else if (k.endWith('_has')) {
506
- where += " and " + escapeId(k.replace('_has', "")) + " in (" + val.trim("'") + ")";
509
+ var vals = val.trim("'").split(',').map((o) => {
510
+ return "'" + o + "'"
511
+ });
512
+ where += " and " + escapeId(k.replace('_has', "")) + " in (" + vals.join(',') + ")";
507
513
  } else if (k.endWith('_like')) {
508
514
  where += " and " + escapeId(k) + " LIKE '%" + val.trim("'") + "%'";
509
515
  } else {
package/test.js CHANGED
@@ -76,47 +76,65 @@ var tpl = {
76
76
  // }
77
77
  // test_tpl_set();
78
78
 
79
- // 测试模板查询
80
- async function test_tpl_get() {
79
+ async function test() {
81
80
  var sql = new Mysql();
81
+ var db = sql.db();
82
82
  sql.setConfig({
83
83
  "user": "root",
84
84
  "password": "Asd159357"
85
85
  });
86
86
  sql.open();
87
- db = sql.db();
88
- var num = 0;
89
- db.table = 'user_account';
90
- var query = {
91
- gm_min: 2,
92
- username: 'ad%m|882'
93
- };
94
- db.page = 1;
95
- db.size = 5;
96
- var query_str = db.tpl_query(query, tpl.query);
97
- ret = await db.getCountSql(query_str, "`user_id` desc", "*");
98
-
99
- console.log('查询结果', ret);
100
- console.log('SQL语句', db.sql);
101
-
102
- var o = ret.list[0];
103
- // console.log("查询结果", o);
104
- o.user_id = await db.count() + 1;
105
- o.nickname = o.nickname + ",6,7";
106
- o.gm = "'5";
107
- // // await db.add(o);
108
- // await db.set({
109
- // user_id: o.user_id
110
- // }, o);
111
- await db.addOrSet({
112
- user_id: o.user_id
113
- }, o);
114
- // console.log(db.sql);
115
-
116
- ret = await db.groupSumSql(query_str, "mc", "gm");
117
- console.log('求和查询结果', ret);
87
+
88
+ db.table = "user_account";
89
+ var list = await db.get({
90
+ user_id_has: "1,2,a-3,4,5"
91
+ });
92
+
93
+ console.log("语法", db.sql, list.length);
118
94
  }
119
- test_tpl_get();
95
+ test();
96
+
97
+ // 测试模板查询
98
+ // async function test_tpl_get() {
99
+ // var sql = new Mysql();
100
+ // sql.setConfig({
101
+ // "user": "root",
102
+ // "password": "Asd159357"
103
+ // });
104
+ // sql.open();
105
+ // db = sql.db();
106
+ // var num = 0;
107
+ // db.table = 'user_account';
108
+ // var query = {
109
+ // gm_min: 2,
110
+ // username: 'ad%m|882'
111
+ // };
112
+ // db.page = 1;
113
+ // db.size = 5;
114
+ // var query_str = db.tpl_query(query, tpl.query);
115
+ // ret = await db.getCountSql(query_str, "`user_id` desc", "*");
116
+
117
+ // console.log('查询结果', ret);
118
+ // console.log('SQL语句', db.sql);
119
+
120
+ // var o = ret.list[0];
121
+ // // console.log("查询结果", o);
122
+ // o.user_id = await db.count() + 1;
123
+ // o.nickname = o.nickname + ",6,7";
124
+ // o.gm = "'5";
125
+ // // // await db.add(o);
126
+ // // await db.set({
127
+ // // user_id: o.user_id
128
+ // // }, o);
129
+ // await db.addOrSet({
130
+ // user_id: o.user_id
131
+ // }, o);
132
+ // // console.log(db.sql);
133
+
134
+ // ret = await db.groupSumSql(query_str, "mc", "gm");
135
+ // console.log('求和查询结果', ret);
136
+ // }
137
+ // test_tpl_get();
120
138
 
121
139
  // async function addField() {
122
140
  // var sql = new Mysql();