Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
Kontox Member Откуда: Сообщений: 146 |
Подскажите , в sql есть столбец(yyy), где значения представлены таким образом 0000000041 Как мне из таких значений удалить нули и оставить только целые цифры, т.е. 41. |
9 мар 19, 13:17 [21828360] Ответить | Цитировать Сообщить модератору |
Дмитрий Мух Member Откуда: Зеленоград Сообщений: 3819 |
Kontox,SELECT CAST('0000000041' AS INT) ? |
9 мар 19, 13:25 [21828365] Ответить | Цитировать Сообщить модератору |
iap Member Откуда: Москва Сообщений: 47052 |
Удалить начальные нули в строке, состоящей только из цифр: DECLARE @X VARCHAR(100)='0000004520090'; SELECT REPLACE(LTRIM(REPLACE(@X,'0',' ')),' ','0'); |
||
9 мар 19, 14:10 [21828379] Ответить | Цитировать Сообщить модератору |
Rankatan Member Откуда: Сообщений: 250 |
еще вариантDECLARE @X VARCHAR(100)='0000004520090'; SELECT stuff(@X,1,PATINDEX('%[^0]%',@X)-1,'') |
9 мар 19, 14:31 [21828386] Ответить | Цитировать Сообщить модератору |
Kontox Member Откуда: Сообщений: 146 |
да, надо удалить лидирующие нули, но как это сделать для всего столбца yyy, таблицы mytab |
9 мар 19, 14:32 [21828387] Ответить | Цитировать Сообщить модератору |
londinium Member Откуда: Киев Сообщений: 1195 |
Kontox,SELECT CAST(YYYY AS INT) FROM MYTAB |
9 мар 19, 14:43 [21828390] Ответить | Цитировать Сообщить модератору |
Дмитрий Мух Member Откуда: Зеленоград Сообщений: 3819 |
Через UPDATE вестимо: UPDATE mytab SET yyy = REPLACE(LTRIM(REPLACE(yyy,'0',' ')),' ','0') |
||
9 мар 19, 14:44 [21828391] Ответить | Цитировать Сообщить модератору |
Kontox Member Откуда: Сообщений: 146 |
Все, получилось![]() |
9 мар 19, 14:59 [21828393] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |