Função CHARINDEX - Amazon Redshift

Função CHARINDEX

Retorna a localização da substring especificada dentro de uma string.

Consulte Função POSITION e Função STRPOS para ver funções semelhantes.

Sintaxe

CHARINDEX( substring, string )

Argumentos

substring

A substring a procurar dentro da string.

string

A string ou coluna a ser procurada.

Tipo de retorno

INTEGER

A função CHARINDEX retorna um INTEGER correspondente à posição da substring (baseada em um, não baseada em zero). A posição é baseada no número de caracteres, e não bytes, de forma que caracteres multibyte são contados como caracteres simples. CHARINDEX retornará 0 se a substring não for localizada dentro da string.

Exemplos

Para retornar a posição da string fish na palavra dog, use o exemplo a seguir.

SELECT CHARINDEX('fish', 'dog'); +-----------+ | charindex | +-----------+ | 0 | +-----------+

Para retornar a posição da string fish na palavra dogfish, use o exemplo a seguir.

SELECT CHARINDEX('fish', 'dogfish'); +-----------+ | charindex | +-----------+ | 4 | +-----------+

O exemplo a seguir usa a tabela SALES do exemplo de banco de dados TICKIT. Para ter mais informações, consulte Banco de dados de exemplo.

Para retornar o número de transações de vendas distinta com uma comissão acima de 999,00 da tabela SALES, use o exemplo a seguir. Esse comando conta comissões maiores que 999,00 verificando se o decimal está acima de quatro casas a partir do início do valor da comissão.

SELECT DISTINCT CHARINDEX('.', commission), COUNT (CHARINDEX('.', commission)) FROM sales WHERE CHARINDEX('.', commission) > 4 GROUP BY CHARINDEX('.', commission) ORDER BY 1,2; +-----------+-------+ | charindex | count | +-----------+-------+ | 5 | 629 | +-----------+-------+