T-SQL Удаление чисел от конца адреса электронной почты

Право, у меня есть приблизительно 21000 отчетов, где у адресов электронной почты есть числа в конце (. + 15 цифр длинное количество, пример: [email protected])

Теперь, лучшее решение, о котором я могу думать, является этим:

Update TABLE
set EmailAddress = (
select substring (EmailAddress, 1, (len(EmailAddress) - 16))
from TABLE)
Where ISNUMERIC(RIGHT(Emailaddress, 15)) = 1

Выше кода не работает (, я не эксперт T-SQL, так простите мне, если этот код выглядит глупым ),

Если я говорю, которые кодируют определенный адрес электронной почты тогда, он работает. Что-то вроде этого:

Update TABLE
set EmailAddress = (
select substring (EmailAddress, 1, (len(EmailAddress) - 16))
from TABLE)
Where ISNUMERIC(RIGHT(Emailaddress, 15)) = 1
and Emailaddress is '[email protected]'

Так, Как я обновляю эти адреса электронной почты и удаляю последние 16 знаков?

0
nl ja de

1 ответы

Попробуйте это;

UPDATE yourTable
SET EmailAddress = LEFT(EmailAddress, LEN(EmailAddress) - 16 )
WHERE PATINDEX('%[^0-9]%', RIGHT(EmailAddress, 15)) = 0 AND LEN(EmailAddress) > 16
0
добавлено
Жаль это была ошибка, используйте обоих, как обновлено. ' % [^0-9] % '
добавлено автор Kaf, источник
Пожалуйста!
добавлено автор Kaf, источник
PATINDEX (' [^0-9] % '-> вы имеете в виду PATINDEX (' % [^0-9] '? потому что мои числа в конце адреса электронной почты
добавлено автор kmria, источник
спасибо Kaf, это работало как очарование. Все, что я должен сделать теперь, является флагом, это гребет, и обновите их. Много большое спасибо снова.: D
добавлено автор kmria, источник
SqlCom.ru - Стиль жизни SQL
SqlCom.ru - Стиль жизни SQL
908 участник(ов)

Правила чата - https://t.me/sqlcom/88269 @sqlcom - основной канал (только MS SQL) @sql_ninja - второй канал (SQL вопросы начального уровня и свободное общение) @Gopnegbot - Викторина по SQL Server (наберите в привате /quiz). Предложения в @sql_ninja

SQL_Ninja
SQL_Ninja
340 участник(ов)

Правила чата - https://t.me/sqlcom/88269 @sqlcom - основной канал (только SQL) @sql_ninja - второй канал (SQL вопросы начального уровня и свободное общение) @Gopnegbot - Викторина по SQL Server (наберите в привате /quiz)