一种方法可能是:
将字符串拆分为第一个字符 UPPER,其余部分如下所示:
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')
可能需要一些调整,因为我还没有实际测试过