У меня есть следующий SQL запросOracle подзапрос после как ошибки
SELECT * FROM users u WHERE 1=1 and u.user_name LIKE 'A%'
Он работает, как ожидалось. Но в следующей строке появляется сообщение об ошибке.
SELECT * FROM users u WHERE 1=1 and u.user_name LIKE (select '%arthur%' from dual)
Сообщение об ошибке выглядит следующим образом:
ORA-00933 SQL Command not properly ended
Я попытался закрыть запрос с ";" но он по-прежнему дает ту же ошибку. Что может вызвать эту ошибку?
Редактировать: мне нужно LIKE и не может использовать IN, давайте предположим, что у нас есть только один «arthur» в базе данных пользователей.
Возможный дубликат [Использование оператора LIKE с подзапросом, который возвращает несколько результатов] (http://stackoverflow.com/questions/18049602/using-like-operator-with-a-subquery-that-returns-multiple -results) – JohnHC
'SELECT * FROM DUAL WHERE 'abcd' LIKE (SELECT '% bc%' FRM DUAL);' работает без ошибок. Как вы ссылаетесь на это утверждение? – MT0
Синтаксис кажется правильным, где вы пытаетесь выполнить это утверждение? – TheName