根据行计数选择查询返回行号(动态数为1、2、3、4..Sequence)

时间:2018-10-16 06:07:13

标签: vb.net ms-access ms-access-2010

我有一个名为“发票”的表。

 ID         InvoiceNo         invoiceDate       main_key    
 1          100078            10.10.2018        1    
 2          400058            10.10.2018        1    
 3          78778             10.10.2018        1    
 4          78778             10.10.2018        2    
 5          78778             10.10.2018        1

我需要使用comboboxvb.net中显示数据行号,即仅显示发票序列号并将id作为valuemember添加到组合框中。

我尝试过

SELECT (
        SELECT count(*)
        FROM Invoice
        WHERE A.ID >= ID
        ) AS ColumnId
    ,ID AS ColumnCode
FROM Invoice AS A
WHERE A.main_key = 1

在此表中,main_key是具有买卖双方数据的main_table的键。

使用where条件时,此查询返回错误的行号序列。

请帮助我...谢谢。

1 个答案:

答案 0 :(得分:1)

如果要在每个main_key组中使用顺序号,请考虑:

SELECT (
        SELECT count(*)
        FROM Invoice
        WHERE A.ID >= ID AND A.main_key=main_key
        ) AS ColumnId
    ,ID AS ColumnCode
FROM Invoice AS A
WHERE A.main_key = 1;