0

mySQL (5.1) 内で完全に数学を実行できるかどうかを調べようとしていますが、これが可能かどうかはわかりません。私はSQLの専門家ではありません。

私は2つのテーブルを持っています。1 つは全体の時間を追跡し、もう 1 つは個々の時間エントリを追跡します。アイデアは、Table2 で使用されたものに基づいて、Table1 に現在の合計を保持することです。

表1:

UserID (INT),
TotalTime (INT)

表 2:

UserID (INT),
TimeUsed (INT),
isCalculated (bool)

私がやりたいことは、isCalculated が false である表 2 を反復処理し、Table1.UserID=Table2.UserID である Table1.TotalTime から各エントリの Table2.TimeUsed を減算することです。

計算の後、isCalculated を true に切り替える必要があります。

これはループで実行できるようですが、mySQL の適切な構文がわかりません。

ご指導ありがとうございます。

4

1 に答える 1

1
UPDATE
    Table1
    JOIN Table2 ON Table1.UserID = Table2.UserID
SET
    Table1.TotalTime = Table1.TotalTime - Table2.TimeUsed,
    Table2.isCalculated = TRUE
WHERE
    NOT Table2.isCalculated
于 2012-10-04T13:32:23.303 に答える