sql - 在Postgresql中获取满足x条件的行的行号
问题描述
您好 Stack Overflow 社区,我想获取满足查询中指定条件的第一个元素的行号。我正在使用 Postgresql 进行查询,并从 Python 发送它们。这是我想要的大纲:
+--------+---------------+
|name |country |
|--------|---------------|
|Juan | United States |
|--------|---------------|
|Carlos | France |
|--------|---------------|
|Lucy | UK |
+--------+---------------+
在这种情况下,我想进行查询,我可以在其中获取国家为法国的第一个人的行号(即第 2 行)。谢谢你。有什么不清楚的可以问我。
解决方案
with rownum as (
select *,
row_number() over() as rnum
from mytable
)
select min(rnum) as first_instance
from rownum
where country = 'France'
您可以在db-fiddle上使用此代码
推荐阅读
- apache-kafka - KSQL server 在 Headless 模式下运行时如何处理流数据?
- flutter - 当值为空时显示另一个小部件
- java - 如何从java中的类路径中查找特定文件
- c++ - 向下转换实际上有用吗?
- firebase - 如何使用 Firebase 事务创建子集合?
- symfony - 在实体字段的国家/地区约束中添加欧盟
- python - CodeWars Kata 将零移到列表末尾
- firebase - FCM 云消息报告仅显示“发送”
- html - Google Places Autocomplete API 密钥不适用于实时表单和闪亮(但适用于 jsfiddle)
- macos - Mac ssh:非法选项--J