Postgres:基于属性的条件LIMIT?

时间:2019-05-02 16:52:05

标签: postgresql

我正在使用Postgres 9.6。我有一个查询要返回数据库中100个最新的标记故事:

select story.id, story.name,
    exists (select * from tag where tag.story_id = story.id) is_tagged  
  from stories
  where is_tagged
  order by t_published desc
  limit 50
union all
select story.id, story.name,
    exists (select * from tag where tag.story_id = story.id) is_tagged  
  from stories
  where not is_tagged
  order by t_published desc
  limit 50

我想对其进行修改,以返回最近的50个带标签的故事和最近的50个未带标签的故事。

我可以这样做工会:

LIMIT CASE

但是有没有一种方法可以在没有联合的情况下通过单个查询执行此操作?我已经读过{{1}},但不确定是否可以根据属性使用。

0 个答案:

没有答案