尝试编写查询以获取帖子和相关附件的列表

时间:2018-08-18 06:40:44

标签: sql postgresql go

我正在使用Go和sqlx编写列表端点。该端点还可以使用过滤器。

我想获取帖子及其相关附件的列表。

我正在努力弄清楚如何做到这一点。

这是我的Post模型的一小段,我正在尝试获取Post的一部分。

type Post struct {
  ID int `db:"id"`
  // ...
  Attachments []*Attachment
}

这里是Attachment

type Attachment struct {
  ID int `db:"id"`
  // ... 
}

我已经可以正常使用getOne端点了-

我只需要执行一个简单的Select查询即可按id获取帖子,并获取关联的附件,我只是将attachmentsposts_attachments进行了连接。

不幸的是,当每个帖子可以包含0个或多个0个附件时,我正在努力弄清楚如何获得带有附件的帖子列表。

是否容易做到这一点?我只是在寻找有关如何从列表部分开始的提示,因为我知道如何获得列表,而不是如何获得很多。

我得到的一种方法是:

  1. 获取帖子列表。

  2. 对于该列表中的每个id,请执行附件查找,如果有> 0,则将其附加到该帖子项目的附件字段中。

但是,这不好吗?看起来太容易了,但是也很业余,因为它每个项目都要进行很多次查找(每次查找最多只能有50个结果)。 :(

0 个答案:

没有答案