select 根据行数查询 Returns 行号(动态数字为 1,2,3,4..Sequence)

select Query Returns Row Number (Dynamic Number as 1,2,3,4..Sequence) as per Row count

我有 table 命名为 "Invoice"。

 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

我需要使用 vb.netcombobox 中显示数据行号,即只显示发票序列号并将 id 作为值成员添加到组合框。

我试过了

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

在这个 table main_key 中是具有买家和卖家数据的 main_table 的关键。

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

请大家帮帮我...提前致谢...!

如果您想要每个 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;