Funções de Cadeia de Caracteres
O provedor de dados .NET Framework para SQL Server (SqlClient) fornece funções String
que executam operações em um String
de entrada e retornam String
ou um resultado de valor numérico. Essas funções estão no namespace SqlServer, que está disponível quando você usa o SqlClient. A propriedade de namespace de um provedor permite que o Entity Framework descubra qual prefixo é usado por esse provedor para construções específicas, como tipos e funções.
A tabela a seguir mostra as funções String
do SqlClient.
Função | Descrição |
---|---|
ASCII(expression) |
Retorna o valor de código do caractere ASCII mais à esquerda de uma expressão de cadeia de caracteres. Argumentos expression : qualquer expressão válida de um tipo String ASCII.Valor Retornado Um Int32 .Exemplo SqlServer.ASCII('A') |
CHAR(expression) |
Converte um código Int32 em uma cadeia de caracteres ASCII.Argumentos expression : um Int32 .Valor Retornado Um String ASCII.Exemplo SqlServer.char(97) |
CHARINDEX(expression1, expression2 [, start_location]) |
Retorna a posição de início da expressão especificada em uma cadeia de caracteres. Argumentos expression1 : uma expressão que contém a sequência de caracteres a serem localizados. A expressão pode ser de do tipo cadeia de caracteres (ASCII ou Unicode) ou um tipo binário.expression2 : uma expressão, geralmente uma coluna, a ser pesquisada para a sequência especificada. A expressão pode ser de do tipo cadeia de caracteres (ASCII ou Unicode) ou um tipo binário.start_location :(Opcional) Um Int64 (não retornado no SQL Server 2000) ou Int32 que representa a posição do caractere para iniciar a pesquisa por expression1 em expression2. Se start_location não estiver especificado, for um número negativo ou zero, a pesquisa iniciará no início de expression2.Valor Retornado Um Int32 .Exemplo SqlServer.CHARINDEX('h', 'habcdefgh', 2) |
DIFFERENCE(expression, expression) |
Compara os valores de SOUNDEX de duas cadeias de caracteres e avalia a semelhança entre elas.Argumentos Um tipo String ASCII ou Unicode. expression pode ser uma constante, uma variável ou uma coluna.Valor Retornado Retorna um Int32 que representa a diferença entre os valores de SOUNDEX de duas expressões de caracteres. O intervalo é de 0 a 4. 0 não indica uma similaridade fraca ou nenhuma similaridade e 4 indica uma similaridade forte ou os mesmos valores.Exemplo // The following example returns a DIFFERENCE value of 4, //the least possible difference or the best match. SqlServer.DIFFERENCE('Green','Greene'); |
LEFT(expression, count) |
Retorna a parte da esquerda de uma cadeia de caracteres com o número de caracteres especificado. Argumentos expression : um tipo de cadeia de caracteres Unicode ou ASCII. Use a função CAST para converter explicitamente character_expression.count : um Int64 (não retornado no SQL Server 2000) ou tipo Int32 que especifica quantos caracteres character_expression serão retornados.Valor Retornado Um String Unicode ou ASCII.Exemplo SqlServer.LEFT('SQL Server', 4) |
LEN(expression) |
Retorna o número de caracteres na expressão de cadeia de caracteres especificada, excluindo os espaços em branco à direita. Argumentos expression : uma expressão de um tipo String (Unicode ou ASCII) ou um tipo Binary Valor Retornado Um Int32 .Exemplo SqlServer.LEN('abcd') |
LOWER(expression) |
Retorna uma expressão de String após converter dados de caracteres maiúsculos em minúsculos.Argumentos expression : qualquer expressão válida do tipo String .Valor Retornado Uma String .Exemplo SqlServer.LOWER('AbB') |
LTRIM(expression) |
Retorna uma expressão de String após remover os espaços à esquerda.Argumentos expression : qualquer expressão válida do tipo String .Valor Retornado Uma String .Exemplo SqlServer.LTRIM(' d') |
NCHAR(expression) |
Retorna um String Unicode com o código inteiro especificado, conforme definido pelo padrão Unicode.Argumentos expression : um Int32 .Valor Retornado Um String Unicode.Exemplo SqlServer.NCHAR(65) |
PATINDEX('%pattern%', expression) |
Retorna a posição inicial da primeira ocorrência de um padrão em uma expressão de String especificada.Argumentos '%pattern%' : um tipo String ASCII ou Unicode. Os caracteres curinga podem ser usados; no entanto, o caractere % deve vir antes e após o padrão (exceto em pesquisas para primeiro ou último caracteres).expression : String ASCII ou Unicode para procurar o padrão especificado.Valor Retornado Um Int32 .Exemplo SqlServer.PATINDEX('abc', 'ab') |
QUOTENAME('char_string' [, 'quote_char']) |
Retorna um String Unicode com os delimitadores adicionados para tornar a cadeia de caracteres de entrada um identificador delimitado válido do SQL Server 2005.Argumentos char_string : um String Unicode.quote_char : uma cadeia de caracteres de um caractere a ser usado como o delimitador. Pode ser aspas simples ( ' ), um colchete esquerdo ou direito ( [ ] ) ou aspas duplas ( " ). Se quote_char não estiver especificado, os colchetes serão usados.Valor Retornado Um String Unicode.Exemplo SqlServer.QUOTENAME('abc[]def') |
REPLACE(expression1, expression2, expression3) |
Substitui uma expressão de caractere por outra expressão de caractere. Argumentos expression1 : a expressão de cadeia de caracteres a ser pesquisada. expression1 pode ser um tipo de cadeia de caracteres Unicode ou ASCII.expression2 : a substring a ser encontrada. expression2 pode ser um tipo de cadeia de caracteres Unicode ou ASCII.expression3 ; a cadeia de caracteres de substituição. expression3 pode ser um tipo de cadeia de caracteres Unicode ou ASCII.Exemplo SqlServer.REPLACE('aabbcc', 'bc', 'zz') |
REPLICATE(char_expression, int_expression) |
Repete uma expressão de caracteres para um número de vezes especificado. Argumentos char_expression : um tipo de String Unicode ou ASCII.int_expression : Int64 (não tem suporte no SQL Server 2000) ou Int32 .Valor Retornado Um tipo de String Unicode ou ASCII.Exemplo SqlServer.REPLICATE('aa',2) |
REVERSE(expression) |
Retorna uma cadeia de caracteres Unicode ou ASCII com suas posições de caracteres invertidas da cadeia de caracteres de entrada. Argumentos expression : um tipo de String Unicode ou ASCII.Valor Retornado Um tipo de String Unicode ou ASCII.Exemplo SqlServer.REVERSE('abcd') |
RIGHT(char_expression, count) |
Retorna a parte da direita de uma cadeia de caracteres com o número de caracteres especificado. Argumentos char_expression : um tipo de cadeia de caracteres Unicode ou ASCII. Use a função CAST para converter explicitamente character_expression.count : um Int64 (não retornado no SQL Server 2000) ou tipo Int32 que especifica quantos caracteres character_expression serão retornados.Valor Retornado Um tipo String ASCII.Exemplo SqlServer.RIGHT('SQL Server', 6) |
RTRIM(expression) |
Retorna uma cadeia de caracteres Unicode ou ASCII após remover os espaços à direita. Argumentos expression : um tipo de String Unicode ou ASCII.Valor Retornado Um tipo de String Unicode ou ASCII.Exemplo SqlServer.RTRIM(' d e ') |
SOUNDEX(expression) |
Retorna um código (SOUNDEX) de quatro caracteres para avaliar a semelhança de duas cadeias de caracteres.Argumentosexpression : um tipo de cadeia de caracteres Unicode ou ASCII.Valor Retornado Um String ASCII. Um código de quatro caracteres (SOUNDEX) é uma cadeia de caracteres que avalia a semelhança de duas cadeias de caracteres.Exemplo Select SqlServer.SOUNDEX('Smith'), SqlServer.SOUNDEX('Smythe') FROM {1} Retorna ----- ----- S530 S530 |
SPACE(int_expression) |
Retorna um String ASCII de espaços repetidos.Argumentos int_expression : um Int64 (não retornado no SQL Server 2000) ou Int32 que indica o número de espaços.Valor Retornado Um String ASCII.Exemplo SqlServer.SPACE(2) |
STR(float_expression [, length [, decimal]]) |
Retorna um String ASCII convertido de dados numéricos.Argumentos float _expression : uma expressão do tipo de dados numérico aproximado (Double ) com um ponto decimal.length : (opcional) um Int32 que representa o tamanho total. Isso inclui ponto decimal, sinal, dígitos e espaços. O padrão é 10.decimal :(opcional) Um Int32 que representa o número de casas à direita do ponto decimal. decimal deve ser menor que ou igual a 16. Se o decimal é mais que 16, o resultado será truncado a dezesseis locais à direita do ponto decimal.Valor Retornado Um String ASCII.Exemplo SqlServer.STR(212.0) |
STUFF(str_expression, start, length, str_expression_to_insert) |
Exclui um comprimento especificado de caracteres e insere um outro conjunto de caracteres em um ponto de partida especificado em uma expressão de cadeia de caracteres. Argumentos str_expression : um String Unicode ou ASCII.start: Um Int64 (não retornado no SQL Server 2000) ou valor Int32 que especifica o local para iniciar a exclusão e a inserção.length : um Int64 (não retornado no SQL Server 2000) ou valor Int32 especificando o número de caracteres para excluir.str_expression_to_insert : um String Unicode ou ASCII.Valor Retornado Um String Unicode ou ASCII.Exemplo SqlServer.STUFF('abcd', 2, 2, 'zz') |
SUBSTRING(str_expression, start, length) |
Retorna a parte de uma expressão de String .Argumentos str_expression : uma expressão de um tipo String (ASCII ou Unicode) ou um tipo Binary .start : um Int64 (não retornado no SQL Server 2000) ou Int32 que especifica onde a subcadeia de caracteres começa. 1 refere-se ao primeiro caractere na cadeia de caracteres.length : um Int64 (não retornado no SQL Server 2000) ou Int32 que especifica quantos caracteres da expressão serão retornados.Valor Retornado Um tipo String (ASCII ou Unicode) ou um tipo Binary .Exemplo SqlServer.SUBSTRING('abcd', 2, 2) |
UNICODE(expression) |
Retorna o valor inteiro, como definido pelo padrão Unicode, para o primeiro caractere da expressão de entrada. Argumentos expression : um String Unicode.Valor Retornado Um Int32 .Exemplo SqlServer.UNICODE('a') |
UPPER(expression) |
Retorna uma expressão de String após converter dados de caracteres minúsculos em maiúsculos.Argumentos expression : uma expressão de um tipo de cadeia de caracteres ASCII ou Unicode.Valor Retornado Um tipo String ASCII ou Unicode.Exemplo SqlServer.UPPER('AbB') |
Para obter mais informações sobre as funções String
que o SqlClient dá suporte, consulte Funções de cadeia de caracteres (Transact-SQL).