ora-01427 エラーを返す SQL リクエストがあります。
単一行サブクエリは複数の行を返します
INSERT INTO my_table (value0, value1, value2, value3)
VALUES((SELECT MAX(value0) FROM my_table), '5', (SELECT DISTINCT(value2) FROM another_table), '8');
問題は、ハードコードされた 2 つの値が必要であり、1 つの行のみを返す選択からの値が必要であり、2 番目の選択によって返される各行に対してそれを行いたいということです。
選択が1つしかない場合、このクエリは機能するように感じます。INSERT 内で複数の SELECT を実行する方法はありますか? 構文は何ですか?
編集: my_table と some_table は実際には同じテーブルです。そもそも明確でなくて申し訳ありませんが、実際には value0 を一意にする必要があるため、挿入の直前だけでなく、毎回新しい行が挿入されます。