0

PHP スクリプトを使用して CSV ファイルから table1 に値をインポートし、内部結合を使用して table1 から table2 のフィールドを更新しています。

UPDATE table2 AS t2
INNER JOIN
  (
  SELECT field, id
  FROM table1  ) AS t1 ON (t2.id=t1.id)
SET t2.field = t2.field+t1.field;

ただし、2 つのインポートを実行すると、最初のインポートで更新され、2 番目のインポートでは更新されなかったフィールドが、最大値 9999.999 、フィールド タイプ Decimal(7,3) に更新されます。なぜ、そして適切な修正が何であるかについてのアイデアはありますか? PS table1 の値は正しいです。

4

1 に答える 1

0

単純な更新構文を使用する

UPDATE table2 AS t2, table1 AS t1
SET t2.field = t2.field+t1.field
WHERE (t2.id=t1.id)
于 2013-01-18T08:47:57.027 に答える