首页 > 解决方案 > 在Postgresql中获取满足x条件的行的行号

问题描述

您好 Stack Overflow 社区,我想获取满足查询中指定条件的第一个元素的行号。我正在使用 Postgresql 进行查询,并从 Python 发送它们。这是我想要的大纲:

+--------+---------------+
|name    |country        |
|--------|---------------|
|Juan    | United States |
|--------|---------------|
|Carlos  | France        |
|--------|---------------|
|Lucy    | UK            |
+--------+---------------+

在这种情况下,我想进行查询,我可以在其中获取国家为法国的第一个人的行号(即第 2 行)。谢谢你。有什么不清楚的可以问我。

标签: sqlpostgresql

解决方案


with rownum as (
  select *,
        row_number() over() as rnum
  from mytable
)
select min(rnum) as first_instance
from rownum
where country = 'France'

您可以在db-fiddle上使用此代码


推荐阅读