Funkce pro práci s řetězci
Rozhraní .NET Framework Zprostředkovatel dat pro SQL Server (SqlClient) poskytuje String
funkce, které provádějí operace se vstupem String
a vrací String
výsledek číselné hodnoty. Tyto funkce jsou v oboru názvů SqlServer, který je k dispozici při použití SqlClient. Vlastnost oboru názvů zprostředkovatele umožňuje Rozhraní Entity Framework zjistit, která předpona je používána tímto zprostředkovatelem pro konkrétní konstrukce, jako jsou typy a funkce.
Následující tabulka ukazuje funkce SqlClient String
.
Function | Popis |
---|---|
ASCII(expression) |
Vrátí hodnotu kódu ASCII znaku nejvíce vlevo řetězcového výrazu. Argumenty expression : Libovolný platný výraz typu ASCII String .Návratová hodnota A Int32 .Příklad SqlServer.ASCII('A') |
CHAR(expression) |
Int32 Převede kód na řetězec ASCII.Argumenty expression : An Int32 .Návratová hodnota ASCII String .Příklad SqlServer.char(97) |
CHARINDEX(expression1, expression2 [, start_location]) |
Vrátí počáteční pozici zadaného výrazu v řetězci znaků. Argumenty expression1 : Výraz, který obsahuje sekvenci znaků, které se mají najít. Výraz může být typu String (ASCII nebo Unicode) nebo binárního typu.expression2 : Výraz, obvykle sloupec, který se má vyhledat v zadané sekvenci. Výraz může být typu String (ASCII nebo Unicode) nebo binárního typu.start_location :(Optional) Int64 (nevrácený v SQL Serveru 2000) nebo Int32, který představuje pozici znaku pro zahájení hledání výrazu 1 ve výrazu 2. Pokud není zadán start_location, je záporné číslo nebo je nula, hledání začíná na začátku výrazu2.Návratová hodnota A Int32 .Příklad SqlServer.CHARINDEX('h', 'habcdefgh', 2) |
DIFFERENCE(expression, expression) |
SOUNDEX Porovná hodnoty dvou řetězců a vyhodnotí podobnost mezi nimi.Argumenty Typ ASCII nebo Unicode String . expression může být konstanta, proměnná nebo sloupec.Návratová hodnota Int32 Vrátí hodnotu, která představuje rozdíl mezi hodnotami SOUNDEX dvou znakových výrazů. Rozsah je od 0 do 4. 0 označuje slabou podobnost nebo žádnou podobnost a 4 označuje silnou podobnost nebo stejné hodnoty.Příklad // The following example returns a DIFFERENCE value of 4, //the least possible difference or the best match. SqlServer.DIFFERENCE('Green','Greene'); |
LEFT(expression, count) |
Vrátí levou část řetězce znaků se zadaným počtem znaků. Argumenty expression : Typ řetězce Unicode nebo ASCII. Pomocí funkce CAST můžete explicitně převést character_expression.count : ( Int64 nevrácené v SYSTÉMU SQL Server 2000) nebo Int32 typ, který určuje, kolik znaků character_expression bude vráceno.Návratová hodnota Unicode nebo ASCII String .Příklad SqlServer.LEFT('SQL Server', 4) |
LEN(expression) |
Vrátí počet znaků v zadaném řetězcovém výrazu s výjimkou koncových prázdných znaků. Argumenty expression : Výraz typu String (Unicode nebo ASCII) nebo Binary typuNávratová hodnota A Int32 .Příklad SqlServer.LEN('abcd') |
LOWER(expression) |
Vrátí výraz po převodu String velkých písmen na malá písmena.Argumenty expression : Libovolný platný výraz String typu.Návratová hodnota Úloha String .Příklad SqlServer.LOWER('AbB') |
LTRIM(expression) |
String Vrátí výraz po odebrání úvodních mezer.Argumenty expression : Libovolný platný výraz typu String .Návratová hodnota Úloha String .Příklad SqlServer.LTRIM(' d') |
NCHAR(expression) |
Vrátí Unicode String se zadaným celočíselnou kódem definovaným standardem Unicode.Argumenty expression : An Int32 .Návratová hodnota Unicode String .Příklad SqlServer.NCHAR(65) |
PATINDEX('%pattern%', expression) |
Vrátí počáteční pozici prvního výskytu vzoru v zadaném String výrazu.Argumenty '%pattern%' : Typ ASCII nebo Unicode String . Lze použít zástupné znaky; znak % však musí pocházet před a za vzorem (s výjimkou hledání prvních nebo posledních znaků).expression : ASCII nebo Unicode String pro vyhledání zadaného vzoru.Návratová hodnota A Int32 .Příklad SqlServer.PATINDEX('abc', 'ab') |
QUOTENAME('char_string' [, 'quote_char']) |
Vrátí Unicode String s přidanými oddělovači, aby vstupní řetězec byl platným identifikátorem s oddělovači SYSTÉMU SQL Server 2005.Argumenty char_string : Unicode String .quote_char : Řetězec s jedním znakem, který se použije jako oddělovač. Může to být jednoduchá uvozovka ( ' ), levá nebo pravá hranatá závorka ([ ] ) nebo dvojitá uvozovka ( " ). Pokud quote_char není zadán, použijí se hranaté závorky.Návratová hodnota Unicode String .Příklad SqlServer.QUOTENAME('abc[]def') |
REPLACE(expression1, expression2, expression3) |
Nahradí výraz znaku jiným znakovým výrazem. Argumenty expression1 : Řetězcový výraz, který se má prohledávat. expression1 může být typu Unicode nebo ASCII String.expression2 :Podřetěžce, který se má najít. expression2 může být typu Unicode nebo ASCII String.expression3 ; Náhradní řetězec. expression3 může být typu Unicode nebo ASCII String.Příklad SqlServer.REPLACE('aabbcc', 'bc', 'zz') |
REPLICATE(char_expression, int_expression) |
Zopakuje výraz znaku pro zadaný počet opakování. Argumenty char_expression : Typ Unicode nebo ASCII String .int_expression : Int64 (nepodporuje se v SYSTÉMU SQL Server 2000) nebo Int32 .Návratová hodnota Typ Unicode nebo ASCII String .Příklad SqlServer.REPLICATE('aa',2) |
REVERSE(expression) |
Vrátí řetězec Unicode nebo ASCII s jeho pozicemi znaků obrácenými ze vstupního řetězce. Argumenty expression : Typ Unicode nebo ASCII String .Návratová hodnota Typ Unicode nebo ASCII String .Příklad SqlServer.REVERSE('abcd') |
RIGHT(char_expression, count) |
Vrátí pravou část řetězce znaků se zadaným počtem znaků. Argumenty char_expression :A Unicode nebo ASCII String type. Pomocí funkce CAST můžete explicitně převést character_expression.count : ( Int64 nevrácené v SYSTÉMU SQL Server 2000) nebo Int32 typ, který určuje, kolik znaků character_expression bude vráceno.Návratová hodnota Typ ASCII String .Příklad SqlServer.RIGHT('SQL Server', 6) |
RTRIM(expression) |
Vrátí řetězec Unicode nebo ASCII po odebrání koncových mezer. Argumenty expression : Typ Unicode nebo ASCII String .Návratová hodnota Typ Unicode nebo ASCII String .Příklad SqlServer.RTRIM(' d e ') |
SOUNDEX(expression) |
Vrátí čtyřznakový kód (SOUNDEX), který vyhodnotí podobnost dvou řetězců.Argumentyexpression : Typ řetězce Unicode nebo ASCII.Návratová hodnota ASCII String . Čtyřznakový kód (SOUNDEX) je řetězec, který vyhodnocuje podobnost dvou řetězců.Příklad Select SqlServer.SOUNDEX('Smith'), SqlServer.SOUNDEX('Smythe') FROM {1} Vrácení ----- ----- S530 S530 |
SPACE(int_expression) |
Vrátí ASCII String s opakovanými mezerami.Argumenty int_expression : ( Int64 nevrací se v SQL Serveru 2000) nebo Int32 označuje počet mezer.Návratová hodnota ASCII String .Příklad SqlServer.SPACE(2) |
STR(float_expression [, length [, decimal]]) |
Vrátí kód ASCII String převedený z číselných dat.Argumenty float _expression : Výraz přibližného číselného (Double ) datového typu s desetinnou čárkou.length : (volitelné) Jedná se Int32 o celkovou délku. To zahrnuje desetinnou čárku, znaménko, číslice a mezery. Výchozí hodnota je 10.decimal :(optional) Jedná se Int32 o počet míst napravo od desetinné čárky. desetinná čárka musí být menší nebo rovna 16. Pokud je desítkové číslo větší než 16, výsledek se zkrátí na šestnáct míst napravo od desetinné čárky.Návratová hodnota ASCII String .Příklad SqlServer.STR(212.0) |
STUFF(str_expression, start, length, str_expression_to_insert) |
Odstraní zadanou délku znaků a vloží jinou sadu znaků do zadaného počátečního bodu v řetězcovém výrazu. Argumenty str_expression : Unicode nebo ASCII String .start: Hodnota Int64 (nevrácená v SYSTÉMU SQL Server 2000) nebo Int32 hodnota, která určuje umístění pro spuštění odstranění a vložení.length : Hodnota Int64 (nevrácená v SYSTÉMU SQL Server 2000) nebo Int32 hodnota, která určuje počet znaků, které se mají odstranit.str_expression_to_insert : Unicode nebo ASCII String .Návratová hodnota Unicode nebo ASCII String .Příklad SqlServer.STUFF('abcd', 2, 2, 'zz') |
SUBSTRING(str_expression, start, length) |
Vrátí část výrazu String .Argumenty str_expression : Výraz typu String (ASCII nebo Unicode) nebo Binary typu.start : ( Int64 nevrací se v SYSTÉMU SQL Server 2000) nebo Int32 určuje, kde se podřetěžce spouští. 1 odkazuje na první znak v řetězci.length : ( Int64 nevrácené v SQL Serveru 2000) nebo Int32 určuje, kolik znaků výrazu bude vráceno.Návratová hodnota Typ String (ASCII nebo Unicode) nebo Binary typ.Příklad SqlServer.SUBSTRING('abcd', 2, 2) |
UNICODE(expression) |
Vrátí celočíselnou hodnotu definovanou standardem Unicode pro první znak vstupního výrazu. Argumenty expression : Unicode String .Návratová hodnota A Int32 .Příklad SqlServer.UNICODE('a') |
UPPER(expression) |
Vrátí výraz po převodu String dat malých písmen na velká písmena.Argumenty expression : Výraz typu ASCII nebo Unicode String.Návratová hodnota Typ ASCII nebo Unicode String .Příklad SqlServer.UPPER('AbB') |
Další informace o funkcíchString
, které SqlClient podporuje, najdete v tématu Řetězcové funkce (Transact-SQL).