SQL Server:根据每个条件生成一个序列号

时间:2019-02-20 16:53:40

标签: sql sql-server

我有以下SQL,并尝试针对它产生的每个记录在它所满足的每个条件旁边生成一个数字。

SELECT TOP 10 
    [Account],
    [Account Name],
    generate #
FROM
    Supplier
WHERE
    Account Name IN ('JP', 'TC', 'KA')

所以会是这样,

Account    Account Name      Generate #
---------------------------------------
T1000          JP                 1
T1001          TC                 2
T1033          KA                 3
T1039          KA                 4

所以Generate #是我要在SQL Server中执行的操作。

感谢您的时间。

1 个答案:

答案 0 :(得分:2)

使用ROW_NUMBER()

select top 10 [Account], [Account Name],
       row_number() over (order by Account) as seqnum
from Supplier
where [Account Name] in ('JP','TC','KA')