Есть несколько подзапросов, где ORDER BY
имеет смысл - и это разрешено синтаксисом.
Однако вы используете ORDER BY
в скалярном подзапросе - тот, который требуетсядля возврата одного значения (одна строка / один столбец), и такие подзапросы не позволяют ORDER BY
.
Вы используете его в любом случае неправильно (скорее всего) - вы ограничиваете количество строк до 1 с помощьюусловие ROWNUM = 1
, которое в сочетании с вашим ORDER BY
, вероятно, означает, что вы хотели заказать по ID_CMP
, а затем взять первую строку из результата.Это не так, как это работает;ORDER BY
приходит только после того, как ROWNUM
назначен в любом случае.Если это то, что вы пытались сделать, удалите ORDER BY
, а также условие для ROWNUM
и вместо этого выберите MIN(ID_CMP)
в предложении SELECT
скалярного подзапроса.
Конкретная ошибка, связанная сотсутствующая правая скобка вызвана предложением ORDER BY
: в этот момент в скалярном подзапросе синтаксический анализатор ожидает закрывающую скобку для подзапроса, а не любой другой токен / предложение / что угодно.