MySQLで下記のようなSQL文を実行した際に、思った結果とは違う結果になってしまいます。
SQL
1INSERT INTO 2 test(id, foo, bar, baz) 3VALUES 4 (1, 0, 0, 0) 5ON DUPLICATE KEY UPDATE 6 id = 1, 7 foo = foo + 1, 8 bar = foo + 1, 9 baz = bar + 1;
なお、test テーブルには以下のようなデータが入っています。
|id(A_I)|foo|bar|baz|
|--------------|
|1|1|1|1|
実行結果がこうなってしまいます。
|id(A_I)|foo|bar|baz|
|--------------|
|1|2|3|4|
私が望んでた結果は以下のような感じなのですが、何か良い方法はありますか?
|id(A_I)|foo|bar|baz|
|--------------|
|1|2|2|2|

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/11/01 03:49
2016/11/01 03:53
2016/11/01 08:25