我有一个页面显示每个用户的 10 条消息(不要问我为什么)
我有以下代码:
SELECT *, row_number() over(partition by user_id) as row_num
FROM "posts"
WHERE row_num <= 10
它不起作用。
当我这样做时:
SELECT *
FROM (
SELECT *, row_number() over(partition by user_id) as row_num FROM "posts") as T
WHERE row_num <= 10
它确实有效。
为什么我需要嵌套查询才能看到row_num
列?顺便说一句,在第一个请求中,我实际上在结果中看到了它,但不能where
为此列使用关键字。