首页 > 解决方案 > Sequelize Select 父/子表中引用的模型

问题描述

如果我有以下表格

帖子 - id、标题、内容、categoryId

类别 - id、名称

并且某些类别没有链接到它们的帖子,我怎样才能只选择从帖子表中引用的类别

我在他们的 github 问题中发现了这一点,但它来自 V1 的代码不再有效,但我认为它展示了我想要完成的事情

ModelA.findAll({
  include: [ModelB],
  having: 'count(ModelB.id) > 0'
});

如果ModelB在 中被引用一次或多次ModelA,请将其包含在内。

编辑:我真的不想包含它,因为我只需要 Category 表中的数据,而不需要 Posts 表中的数据。

如果重要的话,我正在使用 postgres。

标签: node.jspostgresqlsequelize.js

解决方案


required 标签可以帮助你。

ModelA.findAll({
  include: [{
    model: ModelB,
    required: true
    ]  
});

这将只返回 ModelA 中的行,这些行在 ModelB 中至少有一个对应条目


推荐阅读