在MS Access中使用PARTITION BY的ROW_NUMBER

时间:2018-01-21 19:51:24

标签: ms-access numbers row

如何通过MS访问来实现分区上的行号.I Google但是无法找到信息,请您如何执行此操作。 我的数据看起来像这样

CID MPay    NumGrp
4   139608  1
4   139609  2
4   139610  3
4   139611  4
5   139608  1
5   139609  2
5   139610  3
6   139607  1
6   139608  2
6   139609  3
6   139610  4
6   139611  5

到此输出,显示:

  CID   MPay    NumGrp     ID
    4   139608  1          1
    4   139609  2          2
    4   139610  3          3
    4   139611  4          4
    5   139608  1          5
    5   139609  2          6
    5   139610  3          7
    6   139607  1          8
    6   139608  2          9
    6   139609  3          10
    6   139610  4          11
    6   139611  5          12

最佳观点 非常感谢你的帮助。

1 个答案:

答案 0 :(得分:0)

使用我的RowCounter功能。它需要一个字符串作为键,因此您可以将前两个字段连接为键,并将其称为:

SELECT RowCounter(CStr([CID]) & CStr([MPay]),False) AS RowID, *
FROM YourTable
WHERE (RowCounter(CStr([CID]) & CStr([MPay]),False) <> RowCounter("",True));

当然,如果字段是文本,则不需要CStr,例如:

RowCounter(CStr([CID]) & [MPay],False)