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