0.1.1 • Published 7 years ago

sql-criteria-parser v0.1.1

Weekly downloads
2
License
MIT
Repository
github
Last release
7 years ago

SqlCriteriaParser

一个可以将 javascript 对象表达式转换为 T-SQL 条件语句的转换器。

let e = {
    '$or': {
        '$or': {
            'name': {
                '$or': { '$=': 'yichen', '$endsWith': 'a' }
            },
            'age': { '$>': 10, '$<': 22 }
        },
        'gender': 1,
        'level': [1, 2, 3],
        'size': { '$in': [18, 19] }
    }
};

let { segment, values } = sqlCriteriaParser.parse(e);


console.log(segment);
// (((name = ?) OR (name LIKE ?)) OR ((age > ?) AND (age < ?))) OR (gender = ?) OR (level IN (?)) OR (size IN (?))

console.log(values);
// ['yichen', '%a', 10, 22, 1, [1, 2, 3], [18, 19]]

Install

$ npm install sql-criteria-parser

Usage

const SqlCriteriaParser = require('sql-criteria-parser');

let parser = new SqlCriteriaParser('?');

let e = { '$or': { 'name': 'yichen', 'age': 22 } };
let { segment, values } = parser.parse(e);

console.log(segment);
// '(name = ?) OR (age = ?)'

console.log(values);
// ['yichen', 22]

Operator

  • $= to =
  • $> to >
  • $< to <
  • $>= to >=
  • $<= to <=
  • $<> to <>
  • $startsWith to LIKE
  • $endsWith to LIKE
  • $contains to LIKE
  • $in to IN

  • $and to AND

  • $or to OR

License

MIT

0.1.1

7 years ago

0.1.0

7 years ago