如果 SQL 中不满足 case 条件,我该如何忽略?

How do I ignore if case condition is not met in SQL?

我有以下查询:

SELECT 
    CASE WHEN ROW_NUMBER() OVER (ORDER BY COUNT(*) desc) <=10 THEN name ELSE, --ignore-- END AS name
    COUNT(*) as COUNT
FROM person
GORUP BY name

所以我只是想获取列表中某个人的前 10 次出现次数。但我只想要前 5 名,有什么方法可以使 not select 行不在前 5 名之外?我知道我可以嵌套 select,但我想知道是否可以用忽略的东西替换 --ignore--?

就用5的上限

SELECT 
    CASE WHEN ROW_NUMBER() OVER (ORDER BY COUNT(*) desc) <=10 THEN name ELSE '' END AS name
FROM ...
LIMIT 5