Ответ 1
UPDATE mytable SET column=LEFT(column, LEN(column)-5)
Удаляет последние 5 символов из столбца (каждая строка в таблице)
У меня есть таблица из более чем 4 миллионов строк и случайно в одном столбце есть больше данных, чем нужно.
Например, вместо ABC
есть ABC DEFG
.
Как я могу удалить эти N символов с помощью TSQL? Обратите внимание, что я хочу удалить эти символы из базы данных, а не просто выбрать подстроку. Спасибо вам
UPDATE mytable SET column=LEFT(column, LEN(column)-5)
Удаляет последние 5 символов из столбца (каждая строка в таблице)
Я получил ответ на свой вопрос, ant это:
select reverse(stuff(reverse('a,b,c,d,'), 1, N, ''))
Где N - количество символов для удаления. Это позволяет не записывать сложный столбец/строку дважды
Вы можете сделать это, используя SUBSTRING:
Таблица UPDATE SET column = SUBSTRING (столбец, 0, LEN (столбец) + 1 - N)
Удаляет последние N символов из каждой строки в столбце
Это должно сделать это, удалив символы слева на один или сколько угодно.
lEFT(columnX,LEN(columnX) - 1) AS NewColumnName