Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Выбрать часть строки  [new]
sakhalin
Member

Откуда:
Сообщений: 4
Всем доброго времени суток!
Необходимо из строки вытащить номер накладной. . Длинна номера накладной может быть разной. Пример строки:
Расходная накладная (1FO/РН0133-00000565 от 03.03.2015). На выходе надо получить 1FO/РН0133-00000565
6 апр 15, 14:37    [17479068]     Ответить | Цитировать Сообщить модератору
 Re: Выбрать часть строки  [new]
iap
Member

Откуда: Москва
Сообщений: 47000
sakhalin,

какая подстрока является концом номера или началом не-номера?
SELECT LEFT(@S,NULLIF(CHARINDEX(' от',@S),0)-1)
6 апр 15, 14:40    [17479101]     Ответить | Цитировать Сообщить модератору
 Re: Выбрать часть строки  [new]
sakhalin
Member

Откуда:
Сообщений: 4
iap, спасибо огромное за помощь! до скобки обрезал SUBSTRINGом, а дальше уже твоей подсказкой
6 апр 15, 14:45    [17479147]     Ответить | Цитировать Сообщить модератору
 Re: Выбрать часть строки  [new]
iap
Member

Откуда: Москва
Сообщений: 47000
sakhalin
iap, спасибо огромное за помощь! до скобки обрезал SUBSTRINGом, а дальше уже твоей подсказкой
Скобки-то я и не заметил!
6 апр 15, 14:48    [17479167]     Ответить | Цитировать Сообщить модератору
 Re: Выбрать часть строки  [new]
sakhalin
Member

Откуда:
Сообщений: 4
iap, до этого я додумался, а вот дальше часа 2 уже сижу никак дело не двигается. Можно со спокойной душой идти спать
6 апр 15, 14:49    [17479179]     Ответить | Цитировать Сообщить модератору
 Re: Выбрать часть строки  [new]
iap
Member

Откуда: Москва
Сообщений: 47000
sakhalin
iap, до этого я додумался, а вот дальше часа 2 уже сижу никак дело не двигается. Можно со спокойной душой идти спать
Можно одним SUBSTRINGом с двумя CHARINDEX.
У CHARINDEX есть третий параметр, который позволит искать после найденной левой скобки,
а не с начала строки.
6 апр 15, 14:52    [17479192]     Ответить | Цитировать Сообщить модератору
 Re: Выбрать часть строки  [new]
sakhalin
Member

Откуда:
Сообщений: 4
iap, ага, спасибо. попробую еще второй твой вариант. может побыстрее запрос будет отрабатывать
6 апр 15, 14:56    [17479231]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить