sequelize多对多查询怎么用?[已解决]
业务背景
有三张表关系如下:
- 老师表
teacher
:id
,name
- 学生表
student
:id
,name
- 老师学生关系表
relation
:id
,teacher_id
,student_id
以上三张表已经在mysql
中建立好了外键关系
问题
在sequelize
里面怎么查询某个老师对应的所有学生信息呢?
根据官方文档的来,只能查进行两个表的联合查询,这涉及到3个表的,就搞不出来啦......
代码
db.teacher.hasMany(db.relation,{
foreignKey:`teacher_id`
});
db.relation.hasMany(db.student,{
foreignKey:`id`,
targetKey:'student_id`
})
//接下来怎么做???????????~~~
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我之前是这么做的:
@leftstick
向你请教一个问题。
我有个用户表,user----userId
有个话题表,topic ----topicId
现在做一个关注表,就是用户关注了某一些话题:like
目前我的解决方案是,额外建立一张表
这是我查询某个人的关注话题,并且从topic中获取话题的详细信息。比如title,描述等等。。。
得到的结果
但我想要的数据是,关注的话题套入到topics这个数组中。。。
我想请问在这种情况如何解决呢??
2,或者我建立的表关联是否用如下建立
多对多,建立联系,怎么操作这数据呀?
楼主请问一下,多对多关系中你是如何添加数据的?
如果需要添加一个学生,老师的数据已经存在了。如何添加这个学生和学生与老师的关系