位置: 编程技术 - 正文

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

  • 企业缴纳所得税税率
  • 外购商品赠送怎么做账
  • 0税率开票如何做账
  • 对公账户汇款方式
  • 建筑工程公司收入成本怎么结转
  • 增值税负数发票可以作废吗?
  • 企业如何加强存货管理工作
  • 发行债券的会计要素
  • 资本公积是属于什么类账户
  • 公司收个人不开票的货款是否可以收取现金?
  • 个人工资怎么缴纳个人所得税
  • 银行收取代发工资合法吗
  • 企业多缴纳所得税怎么办
  • 采购运输管理系统
  • 理论增值额的含义
  • 问答技巧例子
  • 物业税额
  • 所得税申报填写
  • 1697508131
  • 来料加工出口退税申报操作
  • bois如何设置启动项
  • 什么叫盘活存量股票
  • 投资回报期限
  • 在windows7中桌面指的是全部窗口
  • VMware虚拟机中怎么复制粘贴
  • Yii2使用驼峰命名的形式访问控制器(实例讲解)
  • 微信公众号 h5 保存openid
  • 企业收到政府出资款交增值税
  • 贷款发生减值
  • 私企固定资产管理办法
  • vue打包注意事项
  • 缴纳住房公积金现金流量项目填什么
  • php批量替换
  • php curl_exec
  • 财税2016年12号文件解读
  • 结算应付职工薪酬影响当期损益吗
  • 稳岗补贴怎么申请步骤
  • 个体户个人所得税税率表2023计算
  • 水利建设税根据什么申报
  • Python的aiohttp模块如何使用?
  • 织梦痣铃表情太到位
  • 股权处置时点
  • 资产处置损益明细表货币资金怎么填
  • 利润表的组成是指
  • 应付职工薪酬账户的明细账户有
  • 医院能开增值发票吗
  • 应收票据及应收账款包括哪些科目
  • 股东以固定资产入股会计处理
  • 费用报销单如何粘贴票据
  • 挂靠设计公司费用标准如何记账?
  • 企业库存现金的限额是
  • 企业所得税退税如何进行账务处理
  • 竣工结算的审核要点
  • 进项税额增值税专用发票
  • 自己公司刷自己的信用卡
  • 子公司注销债务如何处理
  • 变更公司股东要收费吗
  • 生产成本里面的直接人工
  • 水果销售公司怎么起名字好听
  • 转让厂房如何缴纳土地增值税
  • 无形资产占公司比例
  • sqlserver批量备份数据库
  • mysql如何输入数据
  • mac中怎么给表情添加文字
  • 操作系统有哪些
  • 电脑系统信息怎么关闭
  • 苹果mac系统怎么用
  • 怎么看80端口被占用
  • 微软账号重新登录
  • win10系统怎样卸载程序
  • win7系统开机后桌面黑屏
  • 微信 cookies
  • android开发手册
  • 深入理解ffmpeg pdf
  • linux修改目录路径
  • linux装python环境
  • jquery鼠标悬停显示内容
  • 本市可以跨县高考报名吗
  • 广东省电子税务局app下载手机版
  • 湖北国税网上办税大厅官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设