powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Помогите с SQL запросом, а именно с работой like
5 сообщений из 5, страница 1 из 1
Помогите с SQL запросом, а именно с работой like
    #32111739
djdfy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите с SQL запросом, а именно с работой like
Необходимо написать запрос типа:
select * from DataBase where Data like ...
Я понял что следующие структуры в like под Oracle работают:
'%'
'%<любой символ>'
'%<любой символ>%'
'<любой символ>%'
'<любое слово>%'

и т.д.
Но мне надо выбрать все строки в которых Data начинается не только, например с символа 'A', но еще и снекоторых других, например 'C' и 'E', но следующая структура:
... Data like '[ACE]%'
НЕ РАБОТАЕТ
Или наоборот требуется, чтобы Data не начиналась, например, с этих же символов...
... Data like '[!ACE]%' или ... Data like '[^ACE]%'
тоже не работают...

Помогите, пожалуйста разобраться, Спасибо.

PS: Ответ можно как на e-mail, так и здесь в форуме...
Еще раз СПАСИБО
...
Рейтинг: 0 / 0
Помогите с SQL запросом, а именно с работой like
    #32111748
Фотография Oracle X-pert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
General Examples
This condition is true for all last_name values beginning with "Ma":

last_name LIKE 'Ma%'

All of these last_name values make the condition true:

Mallin, Markle, Marlow, Marvins, Marvis, Matos

Case is significant, so last_name values beginning with "MA", "ma", and "mA" make the condition false.

Consider this condition:

last_name LIKE 'SMITH_'

This condition is true for these last_name values:

SMITHE, SMITHY, SMITHS

This condition is false for 'SMITH', since the special character "_" must match exactly one character of the lastname value.

ESCAPE Clause Example
You can include the actual characters "%" or "_" in the pattern by using the ESCAPE clause, which identifies the escape character. If the escape character appears in the pattern before the character "%" or "_" then Oracle interprets this character literally in the pattern, rather than as a special pattern matching character.

To search for employees with the pattern 'A_B' in their name:

SELECT last_name
FROM employees
WHERE last_name LIKE '%A\_B%' ESCAPE '\';

The ESCAPE clause identifies the backslash (\) as the escape character. In the pattern, the escape character precedes the underscore (_). This causes Oracle to interpret the underscore literally, rather than as a special pattern matching character.
...
Рейтинг: 0 / 0
Помогите с SQL запросом, а именно с работой like
    #32111763
James
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как один из вариантов:

where substr(data,1,1) in ('A','B')
и наоборот substr(data,1,1) not in ('A','B')
...
Рейтинг: 0 / 0
Помогите с SQL запросом, а именно с работой like
    #32111814
nik_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Where Data LIKE '%A%B%C%'...
...
Рейтинг: 0 / 0
Помогите с SQL запросом, а именно с работой like
    #32111840
m_kus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну нету там регулярных выражений, тольк file wildcards '%' и '_'...
Используй SUBSTR или:
WHERE (s like 'A%') OR (s like 'B%')... может и быстрее будет (с индексами), а может и нет...
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Помогите с SQL запросом, а именно с работой like
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]