|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
Доброго дня уважаемы форумчане. Как мне вытащить число из заданной строки? Допустим есть строка "4.20.2.6.1. Реабилитация травматологических больных (21дн.)" Мне нужно из нее получить чисто число 21 без скобок и прочего. Делаю так, но получаю число начало строки число 4. Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 13:57 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
А 4, 20, 2, 6, 1 - это разве не числа ? Чем они хуже 21 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:00 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
Glory, Мне конкретно надо то что в скобках. Остальное не надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:03 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
НадеждаММне конкретно надо то что в скобках Ну так вот и надо наверное сначала вытащить то, что скобках ? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:04 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
И желательно скобки тоже отсечь оставив только 21. Может я шаблон не правильно задаю в patindex.... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:05 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
НадеждаМ, Скобка находится CHARINDEXом. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:06 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
НадеждаМИ желательно скобки тоже отсечь оставив только 21. Может я шаблон не правильно задаю в patindex....Если искать именно круглые скобки, то удобнее charindex, а не patindex ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:08 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
Спасибо сейчас попробую charindex. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:09 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
НадеждаМ, кстати, можете словами описать точный алгоритм нахождения скобок? Ведь пока не факт, что в строке нет других скобок ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:09 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
НадеждаММожет я шаблон не правильно задаю в patindex.... Шаблон ищет _первое_ число в строке. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:12 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
iap, Вы конечно правы, но пока у мен не встерчается записей с другими скобками в строке. Хотя может быть лучше искать не по скобкам а по сокращению "дн." или "дней ". ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:17 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
НадеждаМiap, Вы конечно правы, но пока у мен не встерчается записей с другими скобками в строке. Хотя может быть лучше искать не по скобкам а по сокращению "дн." или "дней ".Ну дык надо сначала определиться. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:22 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
Буду определять по "дн." или "дней". ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:29 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
НадеждаМБуду определять по "дн." или "дней".Это не точный алгоритм ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:31 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
Да ясно что не точный, но чтож делать если в оной строке так (21дн.), а в другой (15 дней)... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:36 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
НадеждаМДа ясно что не точный, но чтож делать если в оной строке так (21дн.), а в другой (15 дней)... Переделать программа так, чтобы пользователь вводил число дней в отдельное, числовое поле ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:44 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
Glory, пользователь ничего никуда не вводит. Значения берутся из справочника и просто просматирваются на форме. Просто надо количество дней отделить от наименования и вывести в запросе на просмотр в отдельный столбец. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:49 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
НадеждаМGlory, пользователь ничего никуда не вводит. Значения берутся из справочника А в справочнике они божьим промыслом появлись наверное ? НадеждаМПросто надо количество дней отделить от наименования и вывести в запросе на просмотр в отдельный столбец. Ну вот определите точные критерии поиска и реализуйте их. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:51 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
Glory, Справочники нам присылают, затем они закачиваются в базу в таком виде в каком прислали. Пользователи их только смотрят и редактировать не могут. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:54 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
НадеждаМ, Ну, если число дней в вашей строке всегда последнее из чисел, тогда можно так: Код: sql 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 15:03 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
_ч_, Спасибо за совет, попробую. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 15:09 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
НадеждаМ, собрала вот что-то. Не уверена на все 100% что это правильно. Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 15:26 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
Код: sql 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 16:37 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
iap, Попробовала. если между 21и "дн." нет пробела, то получается в итоге "21д". ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 16:52 |
|
MSSQL вытащить из строки число
|
|||
---|---|---|---|
#18+
DECLARE @s nvarchar(255) = N' 4.20.2.6.1. Реабилитация травматологических больных (21дн.)' Код: sql 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 16:55 |
|
|
start [/forum/topic.php?fid=46&msg=37867580&tid=1711847]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
163ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
others: | 239ms |
total: | 509ms |
0 / 0 |