我正在使用Postgres v9.5,将3.30.4和Koa.js 2.3.0续集;我遇到的情况类似于instagram home feed,那里的帖子来自您关注的用户,也来自您关注的主题标签。
我可以使用OR条件在一个查询中获取所有内容,例如:
SELECT DIsnTICNT(ID),title,description
FROM posts
WHERE creatorID in (1,2,3...) OR hashtags IN ('{sport}','{technology}'...)
ORDER BY "createdAt" DESC
LIMIT 10,OFFSET 0;
但是显然,从这个查询中我看不出帖子是来自creatorID(在这种情况下是我关注的用户的ID)还是来自我关注的标签。我在想是否有一种方法可以向查询中添加一个变量或自定义列以标识源,否则我必须进行两个查询并计算限制和偏移量,这不是我想要的,或者可能是序列化可以选择将这些查询合并为一个查询,并添加一列以示区别。