位置: 编程技术 - 正文

node.js Sequelize实现单实例字段或批量自增、自减(nodequery)

编辑:rootadmin

推荐整理分享node.js Sequelize实现单实例字段或批量自增、自减(nodequery),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:node.js详解,nodejs setimmediate,nodejs promise.all,nodejs query,nodejs zlib,node.js gui,nodejs zlib,nodejs query,内容如对您有帮助,希望把文章链接给更多的朋友!

一、单实例自增、自减

在Sequelize中,一个实例(Instance)表示数据库中的一行记录。Instance有两种:由Model.build()创建的非持久化实例,和由Model.create()等方法创建的持久化实例。无论是持久化还是非持久化实例,都会有increment() 、decrement()两人上方法,分别用于字段值的自增和自减两种操作。

instance.increment(fields, [options]) - 字段值自增 instance.decrement(fields, [options]) - 字段值自减

如,查找id为1的用户,并将其年龄自增1:

其中increment()方法生成的SQL语句如下:

increment()和decrement()默认的自增、自减值是1。如果希望使用其它值,可在选项参数[options]中通过by参数指定。

如,将用户的number、age两个字段减小2,可以通过以下方式实现:

生成的SQL如下:

fields参数还可以通过对象传入,并指定自增、自减值。这种情况下,会忽略options.by参数。

node.js Sequelize实现单实例字段或批量自增、自减(nodequery)

如,将用户的number增加2、age减小1:

生成的SQL如下:

二、 批量自增、自减

increment()和decrement()都是针对单个实例进行自增或自减操作的,也就是说操作的数据为数据库中的一行数据。要实现类似如下批量自增、自减操作,就无法通过Instance操作:

在Sequelize中,指量操作一般是通过模型(Model)来实现。但Model并没有increment()和decrement()方法,无法像Instance那样方便的进行自增或自减。

这时,我们可以通过Model.update()并借助sequelize中的顶级方法sequelize.literal()来实现:

sequelize.literal(val) - 创建字面量对象

sequelize.literal()方法用于创建一个字面量对象,该对象(val)会被直接传入所生成的SQL语句中,而不会进行任何转义。

如,将number大于的用户年龄增加1:

生成的SQL语句如下:

总结

标签: nodequery

本文链接地址:https://www.jiuchutong.com/biancheng/374109.html 转载请保留说明!

上一篇:node.js学习之交互式解释器REPL详解(node.js入门教程)

下一篇:解析NodeJs的调试方法(nodejs调试指南)

  • 国税如何零申报
  • 消费税组成计税价格怎么理解
  • 出差人员个人原因延迟返回
  • 企业卖车需要交印花税吗
  • 发票该如何打印
  • 人力资源公司代招的岗位可以去吗
  • 税率降低怎么算降税额
  • 什么费用可以报销工会经费
  • 自建办公楼销售要交土地增值税吗
  • 会计核算过程中的计量尺度通常有
  • 房租怎么抵扣个税计算方法
  • 公司转让股权要去税务吗
  • 办事处可以办理临时身份证吗
  • 财税2010121号文件有效吗
  • 从成因解析如何把控出口退税的执法风险
  • 以旧翻新视频
  • 小规模纳税人废品站卖废品发票开什么项目
  • 长期股权投资年度损益影响金额包括什么
  • 拿到购房发票
  • 固定资产计提折旧的会计科目
  • 贷款余额反映了什么
  • 兼营行为的含义
  • 压缩文件夹发给别人他能看到我桌面上的文件吗
  • safedownloader是什么
  • 腾讯电脑管家帮忙卸载
  • 总公司与分公司的账务处理
  • 存货跌价准备是备抵科目吗
  • 生产成本在资产负债表中怎么填
  • linux中不能使用的shell
  • linux命令行使用鼠标
  • PHP:pg_copy_to()的用法_PostgreSQL函数
  • 股东权益增加额/期初净经营资产
  • 股票发行费用怎么算
  • 收到银行本票的账务处理
  • 应付账款讲解
  • 购买房屋用于出租算投资房吗
  • 划入账户金额
  • php ajax json
  • 本期发出存货成本是什么意思
  • php绘制图片
  • php获取当前页面url
  • 小规模纳税人的企业所得税税率
  • 人类记忆存储在哪
  • netbeans for php
  • phpcms栏目分类
  • 工会筹备金不缴可以吗
  • dedecms使用教程
  • 甲供材料增值税规定
  • 跨年租金如何确权
  • 税法上未投入使用的无形资产摊销所得税能扣除吗
  • 不动产进项税额抵扣从什么时候开始
  • 预付账款和应付账款怎么合并
  • 营业收入净额是销售收入净额吗
  • 外出经营流程
  • 企业所得税余额为负数
  • 会计核算形式的设计具体内容包括
  • 个人开发者要缴税吗
  • 公司销售商品怎么做分录
  • 银行利息收入如何记账
  • 单位购买金税盘账务处理
  • 非包销的视同买断的账务处理是?
  • 印花税计提依据业务发生时间还是开票时间?
  • 个体户能开建筑劳务发票吗
  • 什么样的发票公司可以开
  • 事业单位固定资产入账标准最新规定
  • 融资租赁具体操作流程
  • 会计账簿按账页不同可以分为
  • 二手车交易增值税发票
  • 什么计提折旧不能转回
  • mysql密码忘了怎么办?
  • xp系统如何安装
  • SWNETSUP.EXE - SWNETSUP是什么进程 有什么用
  • win8系统没有自带的游戏吗
  • 如何装win8.1
  • js的?
  • 设计shell程序
  • jQuery中$.ajax()方法参数解析
  • webpack循环引用
  • 差额征收怎么填报表
  • 税务登记证信息
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设