如何在 SQL Server 2000 中编写查询?

How write a query in SQL Server 2000?

我有 2 个具有相同表和视图的数据库,一个在 SQL Server 2008 中,另一个在 SQL Server 2000 中。

我写了这个查询,它在 SQL Server 2008 中有效,但在 SQL Server 2000 中无效。

如何更改我的代码以在 SQL Server 2000 中工作?

SELECT 
    SUM(NA_DA) OVER (PARTITION BY vd.SI_VoucherH) AS a,
    SUM(NA_CA) OVER (PARTITION BY vd.SI_VoucherH) AS b
FROM
    acc.ACC_VOUCHERH vh 
INNER JOIN 
    acc.Acc_VoucherD vd ON vh.SI_VoucherH = vd.SI_VoucherH

很难说 w/o 知道哪个 table NA_DA 和 NA_CA 来自或知道哪个 table 有 SI_VoucherH 作为PK 和 FK。

希望以下内容能让您接近...

SELECT
    vda.NA_DA,
    vda.NA_CA
FROM 
    acc.ACC_VOUCHERH vh 
    JOIN (
            select 
                vd.SI_VoucherH,
                NA_DA = Sum(vd.NA_DA),
                NA_CA = SUM(NA_CA)
            FROM 
                acc.Acc_VoucherD vd 
            GROUP BY
                vd.SI_VoucherH
            ) vda
        on vh.SI_VoucherH=vda.SI_VoucherH;