位置: 编程技术 - 正文

关于Sequelize连接查询时inlude中model和association的区别详解(sequelize-cli)

编辑:rootadmin

推荐整理分享关于Sequelize连接查询时inlude中model和association的区别详解(sequelize-cli),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:sequelize-cli,sequelize关联查询,sequelize 连接池,sequelize include,sequelize join,sequelize使用,sequelize使用,sequelize关联查询,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

大家都知道在使用Sequelize进行关系模型(表)间连接查询时,我们会通过model/as来指定已存在关联关系的连接查询模型,或是通过association来直接指定连接查询模型关系。那么,两者各应该在什么场景下使用呢?

一、 示例准备

模型定义

首先,定义User和Company两个模型:

如上所示,我们定义了User和Company两个模型,并通过belongsTo指定了User-Company之间为1:1关系。

插入数据

接下来基于刚定义的关系模型插入一些测试数据:

关于Sequelize连接查询时inlude中model和association的区别详解(sequelize-cli)

二、使用model/as

在进行连接查询时,如果已经定义模型间的关联关系。就可以在inlude查询选项中,通过'model'属性指定要连接查询的模型,还可以通过'as'属性指定别名。

如,从User模型中查询一个用户,并查询该用户所在的公司信息:

查询结果如下:

三、使用association

连接查询时,如果要连接查询的两个模型间事先没有定义连接关系,或者要使用定义之外的连接关系。这时,可以通过association来定义或重新定义模型关系。

如,查询Company模型中的任意一个公司,并查询该公司的管理员:

由于Company-User之间并没有事先定义模型关系,因此需要在inlude选项中指定连接查询时所要使用的关联关系。

查询结果如下:

association除了用于指定之前没有定义的模型关系,还可以用于重新用于定义模型关系。如,假设我们通过hasMany事先定义了Company-User之间存在1:N的关系。这种关系适用于查询公司下的所有员工。而上例中,我们需要通过1:1关系来查公司的管理员,因此,这时可以通过association重新定义模型关系。

总结

标签: sequelize-cli

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

上一篇:node.js入门学习之url模块(node.js快速入门)

下一篇:利用Node.js+Koa框架实现前后端交互的方法(怎么用node.js写接口)

  • 新成立的销售公司有哪些
  • 作废的增值税普通发票还可以重新开吗?
  • 为客户购买的机票怎么退
  • 外贸出口免税政策
  • 商品报废了还用退货吗
  • 对公账号收款是结算主账户还是结算卡号
  • 销售额包括哪些收入
  • 法人费用报销怎么报销
  • 政策性搬迁资产损失情况怎么写
  • 交车辆购置税可以刷信用卡吗
  • 没取得发票付款的情况该如何做账呢?
  • 企业所得税汇算清缴退税分录
  • 一个员工在两家公司上班违法吗
  • 承兑汇票银行背书
  • 已经缴纳税款怎么作废申报
  • 小规模纳税人装修费用计入什么科目
  • 小配件出口怎么报关
  • 企业所得税三项费用扣除
  • 收到住房补贴怎么做账
  • 购物卡发票能否抵扣
  • 增值税小规模纳税人免征增值税政策
  • saproxy.exe - saproxy是什么进程 有什么用
  • 哪些收入要纳税
  • MAC OS X 10.12.5 beta 4怎么升级 OS X 10.12.5 beta 4升级图文教程
  • Win11 Build 22000.65更新体验:汉化更完善,右下角返回桌面回归
  • 认缴出资什么时候补齐
  • PHP:oci_fetch_assoc()的用法_Oracle函数
  • 包工包料工程要交哪些税
  • php对象赋值给变量
  • 购买性支出和转移性支出都计入GDP
  • php生成表格
  • echarts-gl
  • 车辆购置税发票图片
  • 猿创设计科技有限公司
  • ai模拟
  • 借款利息记入短期借款吗
  • 会议费需要纳税调整吗
  • 主营业务收入和营业外收入的区别
  • 长期借款的主要缺点
  • mongodb 随机获取一条数据
  • 跨年发票一般分为哪几类
  • sql2005安装方法
  • 银行手续费未开发票前计入什么科目
  • mongodb reactive
  • 月销售额10万以下一般纳税人免征增值税
  • 跨月发票作废如何恢复
  • 租入的房子再出租用交房产税吗?
  • 如何计算政府补贴应摊销
  • 有留抵税额可以红冲吗
  • 发票免税怎么做账
  • 当月没认证的发票当月不用进行账务处理吗
  • 非流动资产基金对应的新科目
  • 一般纳税人劳务税率是多少?
  • 提前还贷款计算机
  • 公章变更需要到哪里办理
  • 调整后视镜
  • mysql主从复制作用
  • window10系统主题
  • win10快速启动什么意思
  • Windows 10 PC/Mobile Build 14965预览版推送:改进PC端
  • win7系统怎么用
  • win7输入法图标不见了怎么恢复正常
  • linux操作系统的发行版本有哪些
  • linux系统bug
  • 红石使用基础教学
  • linux如何更改默认的运行级别
  • Win10系统中怎么给图片加备注
  • win7系统垃圾手动清理
  • linux虚拟空间
  • unity 手册
  • js date类型
  • python金融大数据 全流程详解
  • jquery库文件
  • javascript教程
  • js轮播图视频教程
  • 安卓开发界面ui设计器
  • 国家税务总局通知公告
  • 北京地税app
  • 美国网购消费者个人信息保护法
  • 杭州国税电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设