Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
INSERT INTO table VALUES (NULL, 45, 12, NOW(), SELECT MAX(current_price) + 1 FROM table)
同じテーブルの最大価格に1を加えたものに等しい「現在の価格」を持つ行を挿入したいと思います。これを行うために使用SELECT MAX(current_price) + 1 FROM tableしています。
SELECT MAX(current_price) + 1 FROM table
問題は、エラーが返されることです。 誰かが助けることができますか?
サブクエリを角かっこで囲みます。
INSERT INTO table VALUES (NULL, 45, 12, NOW(), (SELECT MAX(current_price) + 1 FROM table));
これを行うためのより良い方法:
INSERT INTO table SELECT NULL, 45, 12, NOW(), MAX(current_price) + 1 FROM table;