Удалить ведущие нули одним sql запросом

существует таблица, в которой > 100000 записей. В ней есть колонка с цифрами у которых есть ведущие нули. Например: 0005, 0050, 0500. Надо одним запросом у всех убрать ведущие нули. В итоге должно получиться: 5, 50, 500. Как это сделать?


Ответы (2 шт):

Автор решения: Akina
UPDATE tablename
SET columnname = columnname + 0
-- WHERE LEFT(TRIM(columnname), 1) = '0'
;
→ Ссылка
Автор решения: Novitskiy Denis

Под рукой нет именно этой версии, удалось проверить только на 10.3.

Можно использовать UPDATE:

update test
set id=SUBSTRING(id,REGEXP_INSTR(id,'[1-9]')) 

Второй вариант - изменить тип на INT, если все значения подходят под маску '000[1-9]%'

ALTER TABLE test MODIFY COLUMN id INT;

Вот тут фиддл

→ Ссылка