将 MS Access 更新查询转换为 SQL 查询

Convert MS Access Update Query to SQL Query

我有一个 MS 访问查询:

'''UPDATE MyFloridaNetDataDump INNER JOIN RepoVoipAcsNonRecurring ON 
'''MyFloridaNetDataDump.service_modified = RepoVoipAcsNonRecurring.Validation 
'''SET RepoVoipAcsNonRecurring.Invoice = MyFloridaNetDataDump.Invoice_modified, 
'''RepoVoipAcsNonRecurring.Amount = '''Round(MyFloridaNetDataDump.billable_charge*RepoVoipAcsNonRecurring.Percentage,2), 
'''RepoVoipAcsNonRecurring.Billing Cycle = MyFloridaNetDataDump.bill_cycle;

我需要将其转换为我在 .net 应用程序中使用的 SQL。 我已经能够转换大部分查询,但是当我尝试执行乘法时,根据我留下的内容,我会得到错误。这意味着如果我取出 ROUND 函数,它不喜欢 * 乘法。如果我删除乘法线,查询就会运行。

'''UPDATE MyFloridaNetDataDump
'''SET MyFloridaNetDataDump.InvoiceModified = RepoVoipAcsNonRecurring.Invoice,
'''MyFloridaNetDataDump.BillableCharge * RepoVoipAcsNonRecurring.Percentage = '''RepoVoipAcsNonRecurring.Amount, 
'''MyFloridaNetDataDump.BillCycle = RepoVoipAcsNonRecurring.BillingCycle
'''FROM RepoVoipAcsNonRecurring
'''WHERE MyFloridaNetDataDump.ServiceModified = RepoVoipAcsNonRecurring.Validation

我认为你颠倒了所有设置的列 我建议你这样做

UPDATE r
SET 
    Invoice = m.InvoiceModified, 
    Amount = Round(m.billablecharge*r.Percentage,2), 
    [BillingCycle] = m.billCycle
FROM 
    MyFloridaNetDataDump m 
    INNER JOIN RepoVoipAcsNonRecurring r ON m.serviceModified = r.Validation