Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Menukar Semua Data Huruf Besar kepada Huruf Betul dalam Pelayan SQL?

Bagaimanakah Saya Boleh Menukar Semua Data Huruf Besar kepada Huruf Betul dalam Pelayan SQL?

Patricia Arquette
Patricia Arquetteasal
2025-01-10 07:52:45827semak imbas

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

Menukar Data Semua Caps kepada Kes Betul dalam Pelayan SQL

Cabaran:

Anda sedang bekerja dengan jadual SQL Server yang mengandungi data sepenuhnya dalam huruf besar dan anda memerlukan cara untuk menukar ini kepada huruf besar yang betul (juga dikenali sebagai huruf besar). Artikel ini menyediakan penyelesaiannya.

Penyelesaian:

Fungsi Pelayan SQL berikut dengan cekap menukar perkataan huruf besar yang dipisahkan oleh ruang putih kepada huruf besar yang betul:

<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>

Ciri Utama:

  • Menukar perkataan semua huruf besar yang dipisahkan oleh ruang putih kepada huruf besar yang betul.
  • Memelihara kes perkataan huruf kecil.
  • Menyokong abjad bukan bahasa Inggeris.
  • Berfungsi secara konsisten merentas versi SQL Server yang berbeza.
  • Mudah disesuaikan dengan Unicode (NCHAR, NVARCHAR) dan panjang parameter boleh laras.
  • Membenarkan penyesuaian definisi ruang putih.

Pelaksanaan:

Untuk menggunakan fungsi ini, hanya hantar teks huruf besar anda sebagai hujah:

<code class="language-sql">SELECT dbo.ToProperCase('ALL UPPER CASE and    SOME lower ÄÄ ÖÖ ÜÜ ÉÉ ØØ ĈĈ ÆÆ') AS ProperCaseText;</code>

Output:

<code>ProperCaseText
-----------------------------------------------------------------
All Upper Case and      Some lower Ää Öö Üü Éé Øø Cc Ææ</code>

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menukar Semua Data Huruf Besar kepada Huruf Betul dalam Pelayan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn