首页 >数据库 >mysql教程 >如何使用 SELECT 查询的结果更新 Microsoft Access 中的表?

如何使用 SELECT 查询的结果更新 Microsoft Access 中的表?

Linda Hamilton
Linda Hamilton原创
2024-12-19 03:15:09253浏览

How Can I Use a SELECT Query's Result to Update a Table in Microsoft Access?

在 Access 的 UPDATE 查询中使用 SELECT

在 Microsoft Access 中,在数据库中执行更新通常涉及使用 UPDATE 查询。但是,当更新需要从单独的 SELECT 查询计算结果时,简单的方法可能不够。

考虑两种情况:

  • 选择查询:
SELECT Min(TAX.Tax_Code) AS MinOfTax_Code
FROM TAX, FUNCTIONS
WHERE (((FUNCTIONS.Func_Pure)<=[Tax_ToPrice]) AND ((FUNCTIONS.Func_Year)=[Tax_Year]))
GROUP BY FUNCTIONS.Func_ID;
  • 更新查询:
UPDATE FUNCTIONS
SET FUNCTIONS.Func_TaxRef = [Result of Select query]

在 Microsoft Access 2007 中,不可能在 UPDATE 查询中直接包含聚合(例如,最小值、最大值)。但是,解决方法涉及利用 SELECT 和 Make Table 查询的功能。

第 1 步:创建查询来计算聚合

构造一个计算最低税费的查询根据特定条件从 TAX 和 FUNCTIONS 表中提取代码,并按 Func_ID 对结果进行分组字段:

SELECT func_id, min(tax_code) as MinOfTax_Code
FROM Functions
INNER JOIN Tax 
ON (Functions.Func_Year = Tax.Tax_Year) 
AND (Functions.Func_Pure <= Tax.Tax_ToPrice) 
GROUP BY Func_Id

将此查询保存为 YourQuery。

第 2 步:将查询转换为表

因为 UPDATE 查询只能对表进行操作,使用 Make Table 查询将计算结果存储在名为的新表中MinOfTax_Code:

SELECT YourQuery.* 
INTO MinOfTax_Code
FROM YourQuery

第 3 步:执行 UPDATE 查询

最后,执行 UPDATE 查询,将 Functions 表与 MinOfTax_Code 表连接起来并更新 Func_TaxRef 字段:

UPDATE MinOfTax_Code 
INNER JOIN Functions ON MinOfTax_Code.func_id = Functions.Func_ID 
SET Functions.Func_TaxRef = [MinOfTax_Code].[MinOfTax_Code]

此解决方法允许您使用 SELECT 查询的结果更新 Microsoft Access 2007 中另一个表中的字段。

以上是如何使用 SELECT 查询的结果更新 Microsoft Access 中的表?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn