如何找到特定行的行号?

Jay*_*abu 3 c# sql sql-server-ce

我有一个这样的数据库表:

在此输入图像描述

我想得到第二行的行号.我使用以下代码:

SELECT ROW_NUMBER() OVER(ORDER BY Name) From Deposit WHERE Name='Murali'
Run Code Online (Sandbox Code Playgroud)

但是,它不起作用.代码有什么问题?提前致谢.

Dar*_*rov 7

ROW_NUMBER函数返回结果数据集中的行号.

在您的查询中,您将结果限制为仅名称为的结果Murali.由于你只有一个这样的记录,它返回1是正常的.

在SQL中,没有行号这样的概念.表行没有订单.只有在进行SQL查询时才有意义.没有SQL查询,你根本无法谈论订单和行号.

您似乎需要为每个用户介绍一些订单号.实现此目的的正确方法是向表中添加一OrderDeposit.现在,为了检索它,您将使用以下查询:

SELECT [Order] From Deposit WHERE Name = 'Murali'
Run Code Online (Sandbox Code Playgroud)

剩下的就是让Order列自动增量,你很高兴.每次插入新记录时,该值将自动递增.所以你去了,现在你有一个订单,它代表了记录插入表格的顺序.你现在有了背景.