2017-07-04 3 views
0

私の更新クエリが最後の行の値だけをとり、それを他のすべての同じ列に配置する理由を理解できません。更新クエリは、値として1行のみをとります - Access 2000?

update query 1

update query 2

だから、私は(PBrojProdPoTip)のパーセントを計算する必要があり、合計でBrojProdPoTipとVkBrojProdPoTipを与えられた:ここ

は写真です。あなたが最後の値をしようとした場合

PBrojProdPoTip = BrojProdPoTip * 100/VkBrojProdPoTip 

、18248のうち244は

P = 244 * 100/18248 = 1.34% 

01.34パーセントを与える私が間違って何をしますか?なぜそれがただ一つの価値を取るのか?

答えて

5

デカルト(乗算)クエリがあります。

おそらく、VkBrojProdPoTipのすべての値を使用して更新されます。ただし、それぞれが前のものを上書きするため、最後の更新のみが表示されます。

+0

:ここ

はスクリーンショットです。私がデータで埋めているメインテーブルにはすでに値が入っていたので、ヘルパーテーブルT10_nezbirniを削除して、その値を[T10-promet] [BrojProdPoTip]に置き換えました。私は答えを追加します。 – Vlad

1

私はAccess Query Designを使用して以来、長い時間がかかりましたが、問題は3つのテーブル間に関係が作成されていないことです。結果として、ターゲット表のすべてのフィールドが、計算からのすべての回答で更新されます。実際には、最後にすべての値が計算されます。代わりに、テーブル間のリンクを作成する必要があります。ドラッグ&ドロップでリンクを作成できます。

0

もっと良い解決策が見つかりました。私がデータで埋めているメインテーブルには既に値が入っていたので、ヘルパーテーブルT10_nezbirniを削除し、その値を[T10-promet] [BrojProdPoTip]に置き換えました。おそらくこれは、しかし、私はより良い解決策を見つけ、正しい答えである

update query 3

関連する問題