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

Откуда:
Сообщений: 132
Подскажите , в sql есть столбец(yyy), где значения представлены таким образом
0000000041
Как мне из таких значений удалить нули и оставить только целые цифры, т.е. 41.
9 мар 19, 13:17    [21828360]     Ответить | Цитировать Сообщить модератору
 Re: как удалить нули  [new]
Дмитрий Мух
Member

Откуда: Зеленоград
Сообщений: 1317
Kontox,

SELECT CAST('0000000041' AS INT)

?
9 мар 19, 13:25    [21828365]     Ответить | Цитировать Сообщить модератору
 Re: как удалить нули  [new]
iap
Member

Откуда: Москва
Сообщений: 46633
Kontox
Подскажите , в sql есть столбец(yyy), где значения представлены таким образом
0000000041
Как мне из таких значений удалить нули и оставить только целые цифры, т.е. 41.
Имеете в виду лидирующие нули в строке или вообще все нули?
Удалить начальные нули в строке, состоящей только из цифр:
DECLARE @X VARCHAR(100)='0000004520090';
SELECT REPLACE(LTRIM(REPLACE(@X,'0',' ')),' ','0');
9 мар 19, 14:10    [21828379]     Ответить | Цитировать Сообщить модератору
 Re: как удалить нули  [new]
Rankatan
Member

Откуда:
Сообщений: 248
еще вариант
DECLARE @X VARCHAR(100)='0000004520090';
SELECT stuff(@X,1,PATINDEX('%[^0]%',@X)-1,'')
9 мар 19, 14:31    [21828386]     Ответить | Цитировать Сообщить модератору
 Re: как удалить нули  [new]
Kontox
Member

Откуда:
Сообщений: 132
да, надо удалить лидирующие нули, но как это сделать для всего столбца yyy, таблицы mytab
9 мар 19, 14:32    [21828387]     Ответить | Цитировать Сообщить модератору
 Re: как удалить нули  [new]
londinium
Member

Откуда: Киев
Сообщений: 1065
Kontox,
SELECT CAST(YYYY AS INT) FROM MYTAB
9 мар 19, 14:43    [21828390]     Ответить | Цитировать Сообщить модератору
 Re: как удалить нули  [new]
Дмитрий Мух
Member

Откуда: Зеленоград
Сообщений: 1317
Kontox
да, надо удалить лидирующие нули, но как это сделать для всего столбца yyy, таблицы mytab

Через UPDATE вестимо:

UPDATE mytab SET yyy = REPLACE(LTRIM(REPLACE(yyy,'0',' ')),' ','0')
9 мар 19, 14:44    [21828391]     Ответить | Цитировать Сообщить модератору
 Re: как удалить нули  [new]
Kontox
Member

Откуда:
Сообщений: 132
Все, получилось
9 мар 19, 14:59    [21828393]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить