私の例をもう少しよく説明すると、これは通常、私が探している種類のものです。
これは私が始めているものです:
Column 1 | Column 2
-------------------
A | 1
B | 2
A | 3
次のいずれかで終了したいと思います。
1) テーブル内のデータが少なくなるため、これが望ましいですが、絶対に必要というわけではありません。
Column 1 | Column 2
-------------------
A | 3
B | 2
2)
Column 1 | Column 2
-------------------
A | 3
B | 2
A | 3
もう少しわかりやすく説明すると、大量のデータを含むテーブルがあります。ユーザーはいつでもデータをインポートできます。問題は、一部のエントリが時々更新されることです。その場合、最後に追加されたデータの状態に関係なく、テーブル内のすべてのエントリを更新する必要があります。たとえば、元の A の値が 1 で、後で A の値が 3 であるというエントリでテーブルが更新された場合、テーブル全体を更新して、A の値が 3 のみであることを示す必要があります。
また、クエリでこれを行う方法は知っていますが、テーブルで行う必要があります。今、私はいくつかのアイデアを考えていますが、どれもうまくいかないようです。次の行に沿って更新クエリを試しました。
"UPDATE tblData SET column2 = Last(Column2) GROUP BY Column1"
しかし、これは実際には機能していないようです。私も試しました:
"UPDATE tblData Set Column2 = DLast('Column2', 'tblData')"
これははるかに近いです。ただし、最後のレコードですべてのエントリを次のように更新しています。
Column 1 | Column 2
-------------------
A | 3
B | 3
A | 3
これは、Column1 の各インスタンスに対してのみ実行するように指示する「GROUP BY」句がないためだと推測していますが、調査によると、「GROUP BY」を「UPDATE」に入れることはできないようです。声明。探している結果を得るには、これにどのようにアプローチすればよいですか?
編集: また、これについて 100% 確信があるわけではありませんが、これを解決する方法は、DLast の 3 番目のオプション パラメーターである [criteria] パラメーターを使用することだと思います。これを使用する唯一の方法は、Column1 の正確な値を指定することです。そのため、ここで使用する方法がわかりませんが、それを操作して個々の値に適用する方法が必要だと思いますColumn1 の。