У меня есть запрос SQL, который возвращает ошибку ora-01427:
однострочный подзапрос возвращает более одной строки
INSERT INTO my_table (value0, value1, value2, value3)
VALUES((SELECT MAX(value0) FROM my_table), '5', (SELECT DISTINCT(value2) FROM another_table), '8');
Дело в том, что мне нужно два жестко закодированных значения, мне нужно значение из выбора, которое возвращает только одну строку, и я хочу сделать это для каждой строки, возвращаемой вторым выбором.
Я чувствую, что этот запрос будет работать, если бы у меня был только один выбор. Есть ли способ сделать несколько SELECT внутри INSERT? Какой будет синтаксис?
РЕДАКТИРОВАТЬ: my_table и some_table на самом деле являются одной и той же таблицей, извините за неясность в первую очередь, на самом деле мне нужно, чтобы значение 0 было уникальным, поэтому ему нужно каждый раз извлекать самый большой идентификатор, а не только перед вставкой, но каждый раз, когда новый строка вставляется.