Umwandeln von Daten in Großbuchstaben in die richtige Groß-/Kleinschreibung in SQL Server
Herausforderung:
Sie arbeiten mit einer SQL Server-Tabelle, die Daten vollständig in Großbuchstaben enthält, und benötigen eine Möglichkeit, diese in die richtige Groß-/Kleinschreibung umzuwandeln (auch als Titelschreibweise bezeichnet). Dieser Artikel bietet die Lösung.
Auflösung:
Die folgende SQL Server-Funktion wandelt durch Leerzeichen getrennte Großbuchstaben effizient in die richtige Groß-/Kleinschreibung um:
<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>
Hauptmerkmale:
Umsetzung:
Um diese Funktion zu verwenden, übergeben Sie einfach Ihren Text in Großbuchstaben als Argument:
<code class="language-sql">SELECT dbo.ToProperCase('ALL UPPER CASE and SOME lower ÄÄ ÖÖ ÜÜ ÉÉ ØØ ĈĈ ÆÆ') AS ProperCaseText;</code>
Ausgabe:
<code>ProperCaseText ----------------------------------------------------------------- All Upper Case and Some lower Ää Öö Üü Éé Øø Cc Ææ</code>
Das obige ist der detaillierte Inhalt vonWie kann ich in SQL Server alle Daten in Großbuchstaben in die richtige Groß-/Kleinschreibung umwandeln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!