ホームページ > データベース > mysql チュートリアル > SQL Server ですべての大文字データを適切な大文字に変換するにはどうすればよいですか?

SQL Server ですべての大文字データを適切な大文字に変換するにはどうすればよいですか?

Patricia Arquette
リリース: 2025-01-10 07:52:45
オリジナル
831 人が閲覧しました

How Can I Convert All Uppercase Data to Proper Case in SQL Server?

SQL Server ですべて大文字のデータを適切な大文字と小文字に変換する

チャレンジ:

完全に大文字のデータを含む SQL Server テーブルを操作しているため、これを適切な大文字 (タイトルケースとも呼ばれる) に変換する方法が必要です。 この記事では解決策を提供します。

解決策:

次の SQL Server 関数は、空白で区切られた大文字の単語を適切な大文字と小文字に効率的に変換します。

<code class="language-sql">CREATE FUNCTION ToProperCase (@string VARCHAR(255)) RETURNS VARCHAR(255)
AS
BEGIN
  DECLARE @i INT;           -- Index
  DECLARE @l INT;           -- Input length
  DECLARE @c NCHAR(1);      -- Current character
  DECLARE @f INT;           -- First letter flag (1/0)
  DECLARE @o VARCHAR(255);  -- Output string
  DECLARE @w VARCHAR(10);   -- Whitespace characters

  SET @w = '[' + CHAR(13) + CHAR(10) + CHAR(9) + CHAR(160) + ' ' + ']';
  SET @i = 1;
  SET @l = LEN(@string);
  SET @f = 1;
  SET @o = '';

  WHILE @i <= @l
  BEGIN
    SET @c = SUBSTRING(@string, @i, 1);
    IF PATINDEX(@w, @c) > 0
      SET @f = 1;
    ELSE IF @f = 1
    BEGIN
      SET @o = @o + UPPER(@c);
      SET @f = 0;
    END
    ELSE
      SET @o = @o + LOWER(@c);
    SET @i = @i + 1;
  END;

  RETURN @o;
END;</code>
ログイン後にコピー

主な機能:

  • 空白で区切られたすべて大文字の単語を適切な大文字と小文字に変換します。
  • 単語の小文字の大文字と小文字が保持されます。
  • 英語以外のアルファベットをサポートします。
  • SQL Server の異なるバージョン間でも一貫して動作します。
  • Unicode (NCHAR、NVARCHAR) に簡単に適応でき、パラメーターの長さを調整できます。
  • 空白定義のカスタマイズを許可します。

実装:

この関数を使用するには、大文字のテキストを引数として渡すだけです:

<code class="language-sql">SELECT dbo.ToProperCase('ALL UPPER CASE and    SOME lower ÄÄ ÖÖ ÜÜ ÉÉ ØØ ĈĈ ÆÆ') AS ProperCaseText;</code>
ログイン後にコピー

出力:

<code>ProperCaseText
-----------------------------------------------------------------
All Upper Case and      Some lower Ää Öö Üü Éé Øø Cc Ææ</code>
ログイン後にコピー

以上がSQL Server ですべての大文字データを適切な大文字に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート