# jsSql **Repository Path**: 264727564/js-sql ## Basic Information - **Project Name**: jsSql - **Description**: 使用 sql语法 处理js数据 只支持单表操作 实现排序,分组,查询,自定义函数 - **Primary Language**: JavaScript - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: https://gitee.com/264727564/js-sql/demo.html - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-08-30 - **Last Updated**: 2021-08-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # jsSql #### 介绍 使用 sql语法 处理js数据 实现排序,分组,查询,自定义函数 `import sqlQuery from 'sqlQuery';` `var data=[ {name:"测试123456789123",age:654}, {name:"456",age:1} ];` ### 排序 `var sql="select * from table ORDER BY age asc"; ` ### 分组 支持聚合函数 count sum max avg min `var sql="select count(*) as count,name from table group by name"` ### 条件查询 `var sql="select * from table where name like '%123%' and age>=50"` ### 表名 没有固定写法 一般 xxxx表名 `select * from xxxx ` ### 函数 目前只写了2个 concat 字符串连接 ifnull 非空判断 `var sql="select concat(name,'123') as name,ifnull(test,0) test from table"` ### 自定义函数 `sqlQuery.prototype.fn["round"]=function(val,def){`     ` return (val-0).toFixed(dep?dep:2);` `}` 使用 `var sql="select *,round(age,2) from table"`; ### case when `var sql="select *,case when age=654 then 1 else 2 end test from table"` ### 备注 字段解析 正确使用 `var sql="select xxx(xx) as xx from 表"` 错误使用 `var sql="select xxx(xx) from 表"` `var list=sqlQuery(data,sql);` `console.log(list)`