Удалить отдельные символы в записи SQL? - PullRequest
1 голос
/ 13 сентября 2011

Я работаю над импортом некоторых файлов и заметил, что некоторые адреса электронной почты начинаются с запятой. Например: ,abc@abc.com

В таблице с 1500 электронными письмами я обнаружил, что более 700 из них имеют эту проблему. Как бы я обновил их, чтобы убрать запятую?

Ответы [ 4 ]

5 голосов
/ 13 сентября 2011
UPDATE dbo.Table
  SET Email = STUFF(Email, 1, 1, '')
  WHERE Email LIKE ',%';
1 голос
/ 13 сентября 2011

попробовать:

UPDATE YourTable
    SET YourColumn=RIGHT(YourColumn,LEN(YourColumn)-1)
    WHERE LEFT(YourColumn,1)=','
0 голосов
/ 13 сентября 2011
UPDATE table SET email = SUBSTRING(email, 2, 1000) WHERE email LIKE ",%";

% - это подстановочный знак, поэтому он будет соответствовать только тем полям, которые начинаются с запятой.

0 голосов
/ 13 сентября 2011

Если вы знаете, что они всегда начинаются с ,:

UPDATE SomeTable
SET SomeColumn = SUBSTRING(SomeColumn, 2, 4000)
WHERE SomeColumn LIKE ',%';

В противном случае вы можете сделать это, чтобы избавиться от всех , независимо от того, где они появляются. Обратите внимание, что добавление предложения WHERE SomeColumn LIKE '%,%' может отрицательно повлиять на производительность.

UPDATE SomeTable
SET SomeColumn = REPLACE(SomeColumn, ',', '');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...