【发布时间】:2016-09-07 14:02:54
【问题描述】:
我在 Access 中有 2 个表:
tbl_RM: (+ for primary key)
+ CustomerName (short text)
+ CountryCode (short text)
+ RMDate (Date/Time - format mmm-yy)
+ SerialNumber (short text)
BlackClicks (Double)
ColorClicks (Double)
AccentClicks (Double)
ProfessionalColorClicks (Double)
第二张桌子
tbl_Invoices: (+ for primary key)
+ CustomerName (short text)
+ CountryCode (short text)
+ InvoiceDate (Date/Time)
+ SerialNumber (short text)
BlackClicks (Double)
ColorClicks (Double)
tbl_RM 包含 98 496 条记录(其中 9113 条与下面的查询匹配)
tbl_Invoices 包含 9 618 条记录(全部符合以下请求)。
我想用来自 tbl_RM 的数据更新 tbl_Invoices。这是我的更新查询:
UPDATE tbl_Invoices
INNER JOIN tbl_RM
ON tbl_Invoices.CustomerName = tbl_RM.CustomerName
AND tbl_Invoices.CountryCode = tbl_RM.CountryCode
AND tbl_Invoices.SerialNumber = tbl_RM.SerialNumber
AND MONTH(tbl_RM.RMDate) = MONTH(tbl_Invoices.InvoiceDate)
AND YEAR(tbl_RM.RMDate) = YEAR(tbl_Invoices.InvoiceDate)
SET tbl_Invoices.BlackPages = tbl_RM.BlackClicks + tbl_RM.AccentClicks,
tbl_Invoices.ColorPages = tbl_RM.ColorClicks + tbl_RM.ProfessionalColorClicks
在 ACCESS 2013 中运行此程序时,计算需要数小时。我想有一种方法可以加快速度。任何建议都将受到欢迎。
【问题讨论】:
标签: sql ms-access sql-update database-performance