在SELECT语句中将序列添加到行

时间:2015-10-19 12:59:27

标签: tsql datetime select sequence row-number

我需要从表中提取交易,这些交易可能会在同一天发生客户交易。对于这些事务,我必须仅为同一天的事务添加序列列。

 CustAcct      Transdate     TransAmt 
 00001         2/1/2000        100
 00001         2/1/2000        150
 00005         3/2/2000        250
 00001         2/1/2000        100

我们希望数据显示为:

 CustAcct      Transdate     TransAmt   Seq
 00001         2/1/2000        100       1
 00001         2/1/2000        150       2
 00005         3/2/2000        250       NULL
 00001         2/1/2000        100       3

我想过使用ROW_NUMBER()函数但不确定如何仅将它用于具有相同日期和帐号的行。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我相信这就是你要找的东西:

SELECT 
    CustAcct
    ,TransDate
    ,TransAmt
    ,ROW_NUMBER() OVER (PARTITION BY TransDate,CustAcct ORDER BY CustAcct)
FROM Cust