>데이터 베이스 >MySQL 튜토리얼 >SQL Server에서 모든 대문자 데이터를 적절한 대소문자로 변환하려면 어떻게 해야 합니까?

SQL Server에서 모든 대문자 데이터를 적절한 대소문자로 변환하려면 어떻게 해야 합니까?

Patricia Arquette
Patricia Arquette원래의
2025-01-10 07:52:45827검색

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 버전에서 일관되게 작동합니다.
  • 유니코드(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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.