Compartilhar via


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

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

expression: 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 StringUnicode.

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

Confira também