在我的SQL select查询中获取recordID

DNR*_*DNR 8 sql sql-server select stored-procedures

我有一个简单的存储过程返回记录:

Select empID, EmpFirstName, EmpLastName from EMPLOYEES  
Run Code Online (Sandbox Code Playgroud)

返回的结果是:

    EmpID         EmpFirstName       EmpLastName  
    -----         ------------       -----------  
   30152          John               Smith  
   30114          Tom                Jones  
   56332          Steve              Williams  
   85442          Paul               Johnson  
Run Code Online (Sandbox Code Playgroud)

我需要的是:

 RecID       EmpID         EmpFirstName       EmpLastName  
 -----       -----         ------------       -----------  
 1      30152          John               Smith  
 2      30114          Tom                Jones  
 3      56332          Steve              Williams  
 4      85442          Paul               Johnson  
Run Code Online (Sandbox Code Playgroud)

我怎样才能获得recordID列?

谢谢

Abe*_*ler 6

可能想要使用Row_Number:

Select ROW_NUMBER() OVER(ORDER BY empID) AS RecId, 
       empID, 
       EmpFirstName, 
       EmpLastName 
from EMPLOYEES 
Run Code Online (Sandbox Code Playgroud)

除非实际上有一个RecId列,EMPLOYEES在这种情况下它只是这样:

Select RecId, 
       empID, 
       EmpFirstName, 
       EmpLastName 
from EMPLOYEES 
Run Code Online (Sandbox Code Playgroud)

  • 您可以使用其中的任何其他列. (3认同)