一種方法可以是:
拆分串入的第一個字符上,其餘的像這樣:
UPPER(LEFT(string)) + RIGHT(string, LEN(string) - 1)
然後更換任何空間後跟一個字母與上殼體它如:
REPLACE(string, ' a', ' A')
綜合以上,你可以這樣做:
SELECT
UPPER(LEFT('have a great day')) +
REPLACE((((((((((((((((((((((((((
RIGHT('have a great day', LEN('have a great day') - 1)
, ' a', ' A'), ' b', ' B'), ' c', ' C')
, ' d', ' D'), ' e', ' E'), ' f', ' F')
, ' g', ' G'), ' h', ' H'), ' i', ' I')
, ' j', ' J'), ' k', ' K'), ' l', ' L')
, ' m', ' M'), ' n', ' N'), ' o', ' O')
, ' p', ' P'), ' q', ' Q'), ' r', ' R')
, ' s', ' S'), ' t', ' T'), ' u', ' U')
, ' v', ' V'), ' w', ' W'), ' x', ' X')
, ' y', ' Y'), ' z', ' Z')
可能需要一些調整,因爲我還沒有實際測試過
什麼版本的SQL Server您使用的是? –
可能重複的[SQL - 大寫每個單詞的首字母](http://stackoverflow.com/questions/11653491/sql-capitalize-first-letter-of-each-word) –
@MikaelEriksson我在這裏發佈了答案。在另一個問題上或這個問題上發佈標準程序是否是標準程序? –