Heim >Datenbank >MySQL-Tutorial >Wie kann ich ein Feld in Microsoft Access mithilfe des Ergebnisses einer SELECT-Abfrage mit Aggregaten aktualisieren?

Wie kann ich ein Feld in Microsoft Access mithilfe des Ergebnisses einer SELECT-Abfrage mit Aggregaten aktualisieren?

Barbara Streisand
Barbara StreisandOriginal
2024-12-29 02:19:09817Durchsuche

How Can I Update a Field in Microsoft Access Using the Result of a SELECT Query with Aggregates?

Abfrage mithilfe der SELECT-Unterabfrage aktualisieren

Bei der Arbeit mit Microsoft Access 2007 stellt das Aktualisieren eines Felds mit dem Ergebnis einer SELECT-Abfrage eine Herausforderung dar. Obwohl Access SELECT-Abfragen innerhalb von UPDATE-Abfragen unterstützt, verbietet es Aggregationen innerhalb des UPDATE-Teils.

Betrachten Sie das folgende Beispiel:

SELECT-Abfrage:

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-Abfrage:

UPDATE FUNCTIONS
 SET FUNCTIONS.Func_TaxRef = [Result of Select query]

Um dieses Problem zu beheben Problem, eine Problemumgehung ist erforderlich.

1. Konvertieren Sie eine SELECT-Abfrage in eine Tabelle:

Erstellen Sie eine Abfrage mit dem Namen „YourQuery“ mit der folgenden Definition:

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

Führen Sie dann eine Make Table-Abfrage aus:

SELECT YourQuery.* 
INTO MinOfTax_Code
FROM YourQuery

Dadurch wird eine Tabelle mit dem Namen MinOfTax_Code erstellt, die die Ergebnisse des SELECT-Vorgangs enthält Abfrage.

2. UPDATE-Abfrage durchführen:

Führen Sie nun die UPDATE-Abfrage aus:

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

Durch die Aufteilung der Aggregation in eine separate Tabelle ermöglicht Access die erfolgreiche Aktualisierung der Funktionstabelle mit das Ergebnis der SELECT-Abfrage.

Das obige ist der detaillierte Inhalt vonWie kann ich ein Feld in Microsoft Access mithilfe des Ergebnisses einer SELECT-Abfrage mit Aggregaten aktualisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn