Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 вопрос по LIKE?  [new]
anonimmm
Guest
Вопрос следующий:
как выбрать с помощью LIKE все номера, начанающиеся на R1, в которых отсутствует буква S.

я написал
LIKE 'R1%^S%' - не работает
LIKE 'R1%[^S]%' - так тоже не хочет

в чем загвоздка?
Спасибо!!
13 янв 12, 17:54    [11901571]     Ответить | Цитировать Сообщить модератору
 Re: вопрос по LIKE?  [new]
Glory
Member

Откуда:
Сообщений: 104751
LIKE 'R1%' AND NOT LIKE '%S%'
13 янв 12, 17:56    [11901587]     Ответить | Цитировать Сообщить модератору
 Re: вопрос по LIKE?  [new]
anonimmm
Guest
Glory,

...а в одной инструкции никак?
А за что тогда отвечает символ ^?

Спасибо!!
13 янв 12, 18:06    [11901691]     Ответить | Цитировать Сообщить модератору
 Re: вопрос по LIKE?  [new]
anonimmm
Guest
сорри за настойчивость, но я просто не понимаю, почему не работает мой пример если в msdn написано:

"WHERE au_lname LIKE 'de[^l]%' all author last names starting with de and where the following letter is not l."

т.е. если я перед [ поставлю %, разве это не решение моей задачи?

(т.е. я понимаю, что раз не работает, то - нет, но хотелось бы понять почему?)

Спасибо!
13 янв 12, 18:13    [11901751]     Ответить | Цитировать Сообщить модератору
 Re: вопрос по LIKE?  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5126
anonimmm
Glory,А за что тогда отвечает символ ^?
символ ^ указывается для определённой позиции, а у вас не известно где располагается символ S...
13 янв 12, 18:14    [11901761]     Ответить | Цитировать Сообщить модератору
 Re: вопрос по LIKE?  [new]
Ivan Durak
Member

Откуда: Minsk!!!
Сообщений: 3755
% в середине строки не канает!!!
13 янв 12, 18:14    [11901763]     Ответить | Цитировать Сообщить модератору
 Re: вопрос по LIKE?  [new]
anonimmm
Guest
...понятно.

Спасибо всем!
13 янв 12, 18:16    [11901784]     Ответить | Цитировать Сообщить модератору
 Re: вопрос по LIKE?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31990
Ivan Durak
% в середине строки не канает!!!
Канает, могли бы и проверить:
select 1 where '12345678' like '1%5%8'


anonimmm
LIKE 'R1%[^S]%' - так тоже не хочет
- понятно, что найдётся не то, что надо.

Ищется следующее:
'R1 - любое количество любых символов - потом в любом месте любая буква, кроме S - потом любое количество любых символов'.

Понятно, что под это определение попадёт любая строка, начинающаяся на R1
13 янв 12, 18:28    [11901866]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить