根据表中的行号显示数据

时间:2017-09-15 04:34:41

标签: sql postgresql

我有下表,有些动物有10行以上的数据。对于特定的动物(animals_key),如何显示特定的行。在我们的例子中,我们可以说第2行。

Animal Breeding table

1 个答案:

答案 0 :(得分:1)

您可以尝试在此处row_number()使用动物分区和基于pcnt列的降序排序。

select
    t.soc_code,
    t.animals_key,
    t.breed,
    t.pcnt,
    t.create_method,
    t.create_date,
    t.create_user_id
from
(
    select t.*, row_number() over (partition by animals_key order by pcnt desc) rn
    from your_table t
    where animals_key = 211004650
) t
where t.rn = 2;