我想在一个查询中获取一篇文章以及与该文章相关的第一条评论。以下是我在PostgreSQL中实现它的方式:
SELECT p.post_id,
(select * from
(select comment_body from comments where post_id = p.post_id
order by created_date asc) where rownum=1
) the_first_comment
FROM posts p
代码在其他数据库中可以正常运行。
然而,在Oracle中,我遇到了一个错误:ORA-00904 p.post_id: invalid identifier。
对于一个子查询,它似乎可以正常工作,但是由于我需要使用rownum(Oracle中没有limit/offset),我无法仅获取一个评论。
这里出了什么问题?
PostgreSQL
上使用了LIMIT 1
,它不支持rownum
。 - Quassnoi