位置: 编程技术 - 正文

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

  • 亏损企业如何填报企业所得税
  • 企业所得税的纳税义务人不包括下列哪类企业
  • 转让金融资产需要交税吗
  • 变更税务法人需要怎么办
  • 个税和社保基数不一致会影响上海落户吗
  • 资产负债表不平的原因有哪些
  • 企业承担的法律责任有哪些保险
  • 外购固定资产的计税基础
  • 没有收汇可以申报吗
  • 研发费用是否包括增值税
  • 食堂开支计入什么科目
  • 境外付汇代扣代缴
  • 汽车销售公司购进车辆怎么做账
  • 定额发票上盖什么章
  • 小规模季度超过30万是全额纳税吗
  • 销售营改增之后取得的固定资产
  • 残疾人就业保障金怎么申报
  • 职工发放洗漱用品怎么进行财税处理?
  • 金蝶kis云专业版原材料数量怎么录入
  • 出纳收到汇票如何登记
  • 契税纳税义务发生时间税屋
  • 购货方跨月销项负数发票如何做账?
  • 一式三联的收据哪一联要盖财务章
  • 在Linux系统中安装了一块虚拟磁盘大小的2G
  • 电脑折旧率计算公式
  • 公司长期贷款
  • 欠款利息收入如何入账
  • win10电脑文件夹打不开
  • 以前年度损益调整结转到哪里
  • win7为什么还有人用
  • win10插usb没有反应
  • php字符串函数有哪些
  • 个人所得税扣缴申报啥意思
  • 废旧物资处理计入什么科目
  • 工业厂房修建需要哪些手续
  • fpzs1是什么文件可以删除吗
  • php加入图片代码
  • 业务招待费的税收金额怎么算
  • 融资租入资产的入账价值可能是()
  • 公司土地被政府占用
  • 向境外企业支付技术咨询指导费
  • 发票中的密码区是如何形成的
  • yaf框架优缺点
  • ajax不刷新页面
  • 其他综合收益科目有哪些
  • vue3技巧
  • 微信小程序获取地理位置
  • lftp shell
  • selenium python 教程
  • 帝国cms使用手册
  • python怎么自己写函数
  • 学电脑的好网站
  • 用发票做账是什么意思?
  • 备用金有发票抵扣吗
  • 现金等价物的特征是
  • 银行开户的费用计入什么科目
  • 销售返利是否需要交税
  • 事业单位实收资本如何做账
  • 提前报废固定资产需要补提折旧
  • 发票必须与合同明细对应吗
  • 非限定性净资产是什么意思
  • 公司场地租赁交什么税
  • 预付款项给供应商合法吗
  • 行为异常不能使用优惠
  • commserver什么意思
  • mac系统常见问题
  • centos直接安装
  • win8 设置
  • Windows10系统下iis没有注册.netFrameWork4.0的原因
  • css-1
  • js调用wsdl接口
  • python的pip安装命令
  • unity 调用java
  • selenium自动化步骤
  • js 不用var
  • javascript组成
  • jquery右键弹出菜单
  • 跨浏览器插件
  • 彩票中奖归出钱人还是中奖人
  • 税控盘如何查询季度统计
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设