Możesz użyć STUFF funkcja, która zastępuje części ciągu. W tym przypadku jest to ostatni znak.
UPDATE tbl
SET COL = stuff(COL, len(COL), 1, '')
WHERE COL > ''
Lub użyj LEWO, biorąc wszystko oprócz ostatniego. Warunek COL> '' zapewnia, że LEFT będzie miał prawidłową długość. LEFT to skrót w SQL Server i wydaje się być zaimplementowany jako SUBSTRING ( patrz dalej poniżej)*
UPDATE tbl
SET COL = LEFT(COL, len(COL) -1)
WHERE COL > ''
Jeśli masz zarówno dane z końcowym średnikiem, jak i bez niego, możesz je specjalnie skierować
UPDATE tbl
SET COL = LEFT(COL, len(COL) -1)
WHERE RIGHT(COL,1) = ':'
Oto plan zapytania dla zapytania LEWO (pokazane są tylko 3 górne wiersze planu tekstu)
select LEFT(text, LEN(text)-1), * from master..syscomments