UPDATE クエリ内での SELECT の使用: Microsoft Access の回避策
Microsoft Access 2007 の UPDATE クエリはテーブル データを変更する簡単な方法を提供します、SELECT クエリの結果を組み込む機能がありません。複雑な選択基準を使用してフィールドを更新しようとする場合、この制限はイライラする可能性があります。
次のシナリオを考えてみましょう。「TAX」の最小値に基づいて、「FUNCTIONS」テーブルの「Func_TaxRef」フィールドを更新したいとします。 " テーブル。次の 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 クエリは、SELECT クエリの結果で「Func_TaxRef」フィールドを更新できません:
UPDATE FUNCTIONS SET FUNCTIONS.Func_TaxRef = [Result of Select query]
この制限を克服するには、SELECT クエリの結果を格納する一時テーブルを作成するという回避策を採用する必要があります。これは、次の手順で実現します。
UPDATE MinOfTax_Code INNER JOIN Functions ON MinOfTax_Code.func_id = Functions.Func_ID SET Functions.Func_TaxRef = [MinOfTax_Code].[MinOfTax_Code]
この回避策は複雑に見えるかもしれませんが、効果的に次の結果を使用してフィールドを更新できます。ただし、Access の制限を考慮し、より複雑なデータ操作タスク用の代替データベース ソリューションを検討することは価値があります。
以上がSELECT クエリの結果を使用して Microsoft Access のフィールドを更新するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。