在 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]
此解決方法允許您使用更新SECT 的查詢Microsoft Access 2007 中另一個表格中的欄位。
以上是如何使用 SELECT 查詢的結果更新 Microsoft Access 中的表格?的詳細內容。更多資訊請關注PHP中文網其他相關文章!