Funções de cadeia de caracteres T-SQL: diferença entre o uso de esquerda / direita e substring e comportamento estranho
Estou usando o SQL Server 2008 e 2005 (Express). Estou tentando extrair parte de uma seqüência de caracteres alfanuméricos de um campo varchar.
RIGHT(str_field, 3)
gera valores nulos, masSUBSTRING(str_field, LEN(str_field)-2, LEN(str_field))
dá o valor certo.LEFT(str_field, 7)
fornece os valores esperados. O que da?
Eu teria pensado queRIGHT(str_field, 3)
eSUBSTRING(str_field, LEN(str_field)-2, LEN(str_field))
são expressões equivalentes.