powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / MSSQL вытащить из строки число
5 сообщений из 30, страница 2 из 2
MSSQL вытащить из строки число
    #37868017
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
DECLARE @s nvarchar(255);
SET @s = ' 4.20.2.6.1.  Реабилитация травматологических больных  (21дн.)';

with cte(s) as
(
 select
  right(@s, len(@s) - nullif(patindex('%([0-9]%)', @s), 0))
)
select
 substring(s, 1, patindex('%[^0-9]%', s) - 1)
from
 cte;
...
Рейтинг: 0 / 0
MSSQL вытащить из строки число
    #37868028
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо всем за советы и примеры. Завтра попробую ваши варианты.
...
Рейтинг: 0 / 0
MSSQL вытащить из строки число
    #37868045
iap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НадеждаМiap,

Попробовала. если между 21и "дн." нет пробела, то получается в итоге "21д".
Код: sql
1.
2.
3.
4.
DECLARE @s nvarchar(255)=N' 4.20.2.6.1.  Реабилитация травматологических больных  (21 дн.)';

SELECT LEFT(s,NULLIF(PATINDEX(N'%[^0-9]%',s)-1,0))
FROM (SELECT STUFF(@s,1,1+LEN(@s)-CHARINDEX(N'(',REVERSE(@s),CHARINDEX(N')',REVERSE(@s))),N''))S(s);
...
Рейтинг: 0 / 0
MSSQL вытащить из строки число
    #37868052
iap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iapНадеждаМiap,

Попробовала. если между 21и "дн." нет пробела, то получается в итоге "21д".
Код: sql
1.
2.
3.
4.
DECLARE @s nvarchar(255)=N' 4.20.2.6.1.  Реабилитация травматологических больных  (21 дн.)';

SELECT LEFT(s,NULLIF(PATINDEX(N'%[^0-9]%',s)-1,0))
FROM (SELECT STUFF(@s,1,1+LEN(@s)-CHARINDEX(N'(',REVERSE(@s),CHARINDEX(N')',REVERSE(@s))),N''))S(s);

Выбирается самое первое число в самых последних круглых скобках
...
Рейтинг: 0 / 0
MSSQL вытащить из строки число
    #37868056
iap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iapВыбирается самое первое число в самых последних круглых скобкахТолько вот между левой скобкой и числом ничего не должно быть.
Плохо.
...
Рейтинг: 0 / 0
5 сообщений из 30, страница 2 из 2
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / MSSQL вытащить из строки число
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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