SQL Server как изменить 1 букву из нижнего регистра в верхний?


У меня есть столбец, который содержит много строк. Каждая строка имеет значение около 3 слов. Я хочу изменить первую букву этого значения на заглавную. Только первая буква, пример abc def ghi в Abc def ghi. Пожалуйста, помогите мне. Спасибо !!

5 2

5 ответов:

Так как вы хотите только первый символ в шапках, вы можете использовать STUFF с UPPER и LEFT, как это

DECLARE @val VARCHAR(100) = 'abc def ghi'
SELECT STUFF(@Val,1,1,UPPER(LEFT(@Val,1)))

Вывод

Abc def ghi

Примечание: Если в начале строки есть пробелы, используйте LTRIM перед другими операциями

Готово !! thx все

UPDATE table SET column= CONCAT(upper(LEFT(column, 1)), 
                         SUBSTRING(column, 2,100));

Вы можете использовать LEFT и RIGHT в следующих случаях:

DECLARE @val VARCHAR(100) = 'abc def ghi'
SELECT UPPER(LEFT(@val,1)) + RIGHT(@val, LEN(@val) -1)

Вы можете попробовать это:

DECLARE @val VARCHAR(100) = 'abc def'
SELECT UPPER(LEFT(@val,1)) + SUBSTRING(@val,2,LEN(@val))

Также это сработало

DECLARE @val VARCHAR(20) = 'abc def ghi'
SELECT UPPER(SUBSTRING(@val,1,1))+SUBSTRING(@val,2,LEN(@val)-1)