Как проверить, содержит ли моя строка ведущие буквы? В C# это просто, но я делаю это в SQL. Есть ли способ проверить это? Если да, то как его удалить?Проверьте, содержит ли строка ведущие буквы
EX: @MyString = 'A1234'
Обновлено строка = '1234'
Как проверить, содержит ли моя строка ведущие буквы? В C# это просто, но я делаю это в SQL. Есть ли способ проверить это? Если да, то как его удалить?Проверьте, содержит ли строка ведущие буквы
EX: @MyString = 'A1234'
Обновлено строка = '1234'
Использование:
UPDATE YOUR_TABLE
SET your_column = SUBSTRING(your_column, 2, DATALENGTH(your_column))
WHERE your_column LIKE '[A-Za-z]%'
Try обертывание SUBSTRING в IF ... если вы хотите, чтобы проверить
substring(@MyString,1,1) = 'A'
или просто
declare @val varchar(10)
set @val = substring(@MyString,1,1)
Для одного ведущего письма вы можете сделать:
IF NOT ISNUMERIC(SUBSTRING(@MyString, 1, 1))
SET @MyString = SUBSTRING(@MyString, 2, LEN(@MyString))
Вы можете повторить это, пока не будет больше букв.
Я думаю, вы должны изменить 'DATALENGTH()' 'для LEN()': если тип UNICODE (и 'NVARCHAR' широко используется в настоящее время)' DATALENGTH() 'будет «удвоить» длину. – onedaywhen