# SUBSTR

A função SUBSTR atua sobre uma expressão cadeia de caracteres ou uma expressão cadeia de bits. No primeiro caso o tipo do resultado é VARCHAR, e no segundo caso é VARCHAR FOR BIT DATA. O comprimento do resultado é o comprimento máximo do tipo de origem.

#### Sintaxe

    SUBSTR({ ExpressãoCaractere },
       PosiçãoInicial [, ComprimentoCadeia ] )

A PosiçãoInicial e o parâmetro opcional ComprimentoCadeia são ambos expressões inteiras (O primeiro caractere ou bit possui PosiçãoInicial igual a 1; se for especificado 0, o Derby assume que é 1).

A ExpressãoCaractere é do tipo de dado CHAR, VARCHAR ou LONG VARCHAR, ou de qualquer tipo de dado nativo que seja convertido implicitamente em uma cadeia (exceto a expressão de bit).

Para as expressões caractere, tanto PosiçãoInicial quanto ComprimentoCadeia se referem a caracteres. Para expressões de bit, tanto PosiçãoInicial quanto ComprimentoCadeia se referem a bits.

SUBSTR retorna NULL se for especificado ComprimentoCadeia, e este for menor que zero.

Se PosiçãoInicial for positiva, então se refere a posição a partir do início da expressão de origem (contando o primeiro caractere como 1). Se PosiçãoInicial for negativa, então é a posição a partir do fim da origem.

Se não for especificado ComprimentoCadeia, então SUBSTR retornará a subcadeia da expressão desde a PosiçãoInicial até o fim da expressão de origem. Se for especificado ComprimentoCadeia, então SUBSTR retornará um VARCHAR ou VARBIT com comprimento ComprimentoCadeia a partir da PosiçãoInicial.

Tópico pai: Funções nativas