位置: 编程技术 - 正文

关于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写接口)

  • 企业所得税计算表
  • 零申报资产负债表年初与期末数
  • 专票上的电话号码应该是哪个
  • 收到生育津贴会计分录怎么做
  • 房产税房产原值包括地价吗
  • 预缴税款缴多了怎么办
  • 小规模纳税人季报还是月报?
  • 建设工程中税费如何承担
  • 冲减存货的会计分录
  • 出口货物索赔如何确认收入
  • 个人投资理财需要注意什么
  • 增值税专用发票可以开电子发票吗
  • 关于个税应补退的说明
  • 个人出租房屋税率表2023年
  • 纳税人提供植物养护服务按照什么服务缴纳增值税
  • 企业ci
  • 期末未缴税额是负数用于抵扣如何填报
  • 生活服务的发票可以报销吗
  • 发票上可以盖两次章吗
  • 破产清算重整和解
  • 事业单位固定资产
  • 固定资产实物归哪个部门管理
  • 劳务挂靠需要开票吗
  • php面向对象是什么意思
  • 公司从其他公司买一个项目花了100万
  • 企业购入固定资产一次性税前扣除
  • 支付包装物押金为什么是其他应收款
  • 结构性存款利息增值税
  • 有关预收账款的说法正确的是
  • 我国关税税则设有
  • php自动执行函数
  • php缓存技术和静态化
  • 财务报表中固定资产清理为什么加借方余额
  • 写字楼买卖办手续
  • pytorch1.5
  • 2021市场发展
  • 推特网页设置
  • 装修及室内设计学什么
  • 已认证发票对方作废后不重开怎么办
  • 银行电子承兑到期后怎么操作
  • 免税公司专用发票是什么
  • sqlserver2008sa用户不能登录
  • sql server 2008简介
  • mysql5.6设置密码
  • sqlserver表与表之间怎么关联
  • 什么情况下适用简易程序
  • 小企业会计准则和一般企业会计准则的区别
  • 公司印章样子
  • 股权收购协议书实际案例
  • 结构性存款是什么意思是理财
  • 工业企业外购存货的入账价值一般包括()
  • 年终奖金个人所得
  • 企业职工食堂就餐收费
  • 其他应付款贷方正数表示什么意思
  • 外贸公司出口退税进项发票没及时开票有影响吗
  • 事业单位非税收入帐务处理
  • 公司内部核算调研报告
  • 2020年账簿印花税减免政策
  • 劳动关系从什么时候确立
  • 小企业的建账流程
  • bios屏蔽nvme
  • centos8查看cpu温度
  • win7通过组策略阻止应用程序安装
  • win8.1进不了系统
  • win8windows设置在哪里
  • win8电脑锁屏壁纸怎么设置方法
  • EXTJS记事本 当CompositeField遇上RowEditor
  • Android: Receiving Data from the Send Intent,将自己的app注册系统分享
  • css的基础
  • unity屏幕截图
  • node.js教程详细
  • unity3d apk
  • 安卓实现单选题
  • 西安税务机关
  • 吉林网上报税网址
  • 粮仓计算公式
  • 上海税务办事大厅电话
  • 电子发票冲红期限
  • 湖南耕地占用税标准
  • 郝姓家谱辈分查询
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设