PostgreSQL equivalent for TOP n WITH TIES: LIMIT “with ties”?

后端 未结 3 1828
遥遥无期
遥遥无期 2020-11-29 09:00

I\'m looking for something similar this in SQL Server:

SELECT TOP n WITH TIES FROM tablename

I know about LIMIT in PostgreSQL,

3条回答
  •  慢半拍i
    慢半拍i (楼主)
    2020-11-29 09:17

    Try this:

    Output: 10, 9, 8, 8

    with numbers (nums) as (
      values (10), (9), (8), (8), (2)
    ) 
    SELECT nums FROM Numbers 
    WHERE nums in (SELECT DISTINCT nums FROM Numbers ORDER BY nums DESC LIMIT 3)
    ORDER BY nums DESC
    

    Output: 10,10,9,8,8

    with numbers (nums) as (
      values (10), (9), (8), (8), (2), (10)
    ) 
    SELECT nums FROM Numbers 
    WHERE nums in (SELECT DISTINCT nums FROM Numbers ORDER BY nums DESC LIMIT 3)
    ORDER BY nums DESC
    

提交回复
热议问题