2

ここからさまざまな Title Case ソリューションを試してみました0が、コラムに記載されています。LEN実行するにはtoを変更する必要がありLENGTHます。ステートメントを2つの部分に分解すると、機能します。

 UPDATE names 
    SET
    surname = UPPER(LEFT(surname, 1)) +
    LOWER(RIGHT(surname, LENGTH(surname) - 1));

または

update  names
set     surname = upper(substring(surname,1,1)) + 
        lower(substring(surname, 2, length(surname)-1))
where   length(surname) > 0 ;
4

1 に答える 1

2

MySql を使用する場合、関数 CONCAT を使用して 2 つの文字列を連結する必要があります。

この上:

update  names
set     surname = concat(upper(substring(surname,1,1)),
        lower(substring(surname, 2, length(surname)-1)))
where   length(surname) > 0 ;

それは良い使用WHERE条件なので、null 可能なフィールドの可能性を防ぎます

注意: DBMS は 2 つの数値を合計しようとするため、結果は 0 です (文字列による暗黙的な変換のため、結果の代わりに 0 が返されます)。

フィドルを表示

于 2014-07-24T09:57:17.723 に答える