c# - PostgreSQL 中的 ROW_NUMBER 查询?

标签 c# postgresql

--1
(select * , row_number() over (order by columnname) as tempcolumn 
 from tablename )

--2
select * , row_number() over (order by defid) as tempcolumn 
from fields 
where tempcolumn between 1 and 2 

第一个查询将给整个表添加一个新列。

我需要在检查临时列的范围后显示结果。 我尝试的第二个查询抛出一个错误,如 tempcolumn doesnot exist

最佳答案

你可以使用子查询:

SELECT * FROM (
  select *,ROW_NUMBER() OVER(ORDER BY columnname) as tempcolumn 
  from  tablename) sub
WHERE tempcolumn <= 2;

您不能在同一级别的 WHERE 子句中使用 SELECT 的别名,也不能将 ROW_NUMBER() 作为 的一部分使用哪里

更多信息:

关于c# - PostgreSQL 中的 ROW_NUMBER 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50718824/

相关文章:

postgresql - 当没有输入行时,让 array_agg() 不返回任何行

sql - 使用索引提高 Postgresql 中的查询性能

c# - 如何在不使用字符串的情况下创建/读取具有特定小数位的数字?

c# - MVVM 与 TreeView - 添加节点

c# - 使用结构和属性时没有编译错误

node.js - 如何使用 Node.js 中的钩子(Hook)更改特定列数据? ( Sequelize ,Postgresql)

sql - 从异常中提取用户定义的错误消息

postgresql - postgresQL 如何仅在更新行上应用触发器?

c# - DirectoryEntry.Invoke ChangePassword 上的 Active Directory 访问被拒绝异常

c# - 如何确定字符串变量的值是否在 C# 中更改?