## 非复杂语句可使用抽象层 类似于thinkphp的连贯查询
#### 如果需要更复杂的数据库模型支持可以自行开发sqlite-vue.js、mysql-vue.js 通用操作方法如下
#### 模型连贯操作
**M() 指定数据库名**
**where() 指定条件**
**field() 字段过滤**
**limit() 取数据数量**
**order() 字段排序**
#### 执行语句
**select() 查询数据集**
**delete() 删除数据**
**update() 更新数据**
**insert() 添加数据**
**find() 单条数据**
**count() 取条数**
**querySql() 执行原生sql**
### 根据条件查询 数据数量
```
let where = 'age = 20';//条件查询 年龄在20岁的数据
M('members').where(where).count().then(e => {
this.total = parseInt(e[0][0]); //获取数据数量
});
```
### 查询20条数据集 并以添加时间排序
```
M('members').order('addtime desc').limit(20).select().then(e => {
this.$notify({
title: '成功',
message: '成功加载数据库数据',
type: 'success',
duration: 3000
})
```
### 查询 指定条件数据集排序后 并参与分页 下面是抽取某时间段数据
```
let startTime=null;
let stopTime=null;
if(this.value7 !== null){
startTime = (this.value7[0].getTime()/1000).toString();
stopTime = (this.value7[1].getTime()/1000).toString();
startTime = '"'+startTime+'"';
stopTime = '"'+stopTime+'"';
}
let where = '';
if(startTime !== null && stopTime !== null){
where = 'regdate >=' + startTime + ' and regdate <=' + stopTime
}
let listNum = 10;
let num1 = (page - 1) * listNum;
let num2 = listNum;
listNum = num1.toString() + ',' + num2.toString();
M('members').where(where).order('regdate desc').limit(listNum).select().then(e => {
this.$notify({
title: '成功',
message: '成功加载数据库数据',
type: 'success',
duration: 3000
})
```
- 简介
- 系统变量
- Ext核心对象
- 调用php对数组js升序排序
- 获取并格式化当前时间
- md5加密
- 输出php所有定义函数
- 多参数传递
- 数据库
- 介绍
- 原生sql
- 抽象层
- 抽象层-增加数据
- 抽象层-删除数据
- 抽象层-更新数据
- 抽象层-查询单条数据
- 抽象层-查询结果集
- 电子秤
- 大华条码电子秤-本地预打包条码专用与PLU
- 大华电子秤-PLU导入
- ip电子秤
- 一体机称重称(串口电子秤)
- 大华电子秤-扫描
- 大华电子秤-初始化配置
- PLU文件导入
- 串口称或串口地磅称
- 大华电子秤基本操作
- 托利多PC一体称台秤
- 通知栏
- 窗口操作
- 打印机
- 切纸
- 固定模板打印
- html模板打印
- 对照表
- html打印
- web打印控件
- 建议打印机
- 收银扫码
- pos机发起收款
- API发起收银
- 系统配置
- 播放声音
- 注意事项
- 键盘监听
- 实体会员卡
- 钱箱
- 全屏显示
- 串口
- 硬件
- 客显
- browser对象
- 相关知识
- 区位码
- 相关硬件
- 扫码枪
- 副屏