ant*_*h.k 1 sql-server stored-procedures
我知道这个问题听起来像是重复。然而,尽管我发现了类似的问题,但我没有得到任何确切的信息。我不想删除从查询返回的任何重复值。我想要的是获得一个唯一标识符,例如从 sp 返回的结果的序列号。我尝试使用 Row_Number()。但是,即使这样也不起作用,因为它应该基于非重复列进行分区。我的结果不需要有非重复的列。等级和密集等级也不在考虑之列。那么,我应该怎么做才能获得唯一标识每一行的序列号类型的列。这些行也应该是 int 的。这是一个例子:
empName empSalary
Peter 10000
Schott 20000
Schott 10000
Run Code Online (Sandbox Code Playgroud)
表应该还有一列,如下所示:
Slno empName empSalary
1 Peter 10000
2 Schott 20000
3 Schott 10000
Run Code Online (Sandbox Code Playgroud)
如果您不关心顺序:
Select ROW_NUMBER() over (order by (Select 1)) as SlNo ,*
from table
Run Code Online (Sandbox Code Playgroud)
或者
在#temp表中处理它:
Select * into #TempTable from SourceTable
ALTER TABLE tempdb.dbo.#TempTable ADD SlNo INT IDENTITY(1,1) ;
Select * from #TempTable
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6382 次 |
| 最近记录: |