A fun????o CHAR retorna a representa????o cadeia de caracteres de comprimento fixo
de:
- uma cadeia de caracteres, se o primeiro argumento for algum tipo de
cadeia de caracteres.
- um valor data/hora, se o primeiro argumento for DATE, TIME ou TIMESTAMP.
- um n??mero decimal, se o primeiro argumento for um n??mero decimal.
- um n??mero de ponto flutuante de precis??o dupla, se o primeiro argumento
for DOUBLE ou REAL.
- um n??mero inteiro, se o primeiro argumento for SMALLINT, INTEGER ou BIGINT.
O primeiro argumento deve ser de um tipo de dado nativo.
O resultado da fun????o ?? uma cadeia de caracteres de comprimento fixo.
Se o primeiro argumento puder ser nulo, o resultado poder?? ser nulo.
Se o primeiro argumento for nulo, o resultado ser?? o valor nulo.
Sintaxe caractere para caractere
CHAR (Express??oCaractere [, inteiro] )
- Express??oCaractere
- Uma express??o que retorna um valor do tipo de dado CHAR, VARCHAR,
LONG VARCHAR ou CLOB.
- inteiro
- O atributo comprimento da cadeia de caracteres de comprimento fixo
resultante.
O valor deve estar entre 0 e 254.
Se o comprimento da express??o caractere for menor que o atributo comprimento
do resultado, o resultado ser?? preenchido com brancos at?? o comprimento do
resultado.
Se o comprimento da express??o caractere for maior que o atributo comprimento
do resultado, ser?? realizado um truncamento.
Retorna uma advert??ncia, a menos que os caracteres truncados sejam todos brancos
e a express??o caractere n??o seja uma cadeia longa (LONG VARCHAR ou CLOB).
Sintaxe inteiro para caractere
CHAR (Express??oInteira)
- Express??oInteira
- Uma express??o que retorna um valor com tipo de dado inteiro (SMALLINT,
INTEGER ou BIGINT).
O resultado ?? a representa????o cadeia de caracteres do argumento na forma
de uma constante inteira do SQL.
O resultado consiste de n caracteres, que s??o os d??gitos significativos que
representam o valor do argumento, precedidos pelo sinal menos se o argumento
for negativo.
?? alinhado ?? esquerda.
- Se o primeiro argumento for um SMALLINT: O comprimento do resultado
ser?? igual a 6.
Se o n??mero de caracteres do resultado for menor que 6, ent??o o resultado
ser?? preenchido ?? direita com brancos at?? o comprimento 6.
- Se o primeiro argumento for um INTEGER: O comprimento do resultado
ser?? igual 11.
Se o n??mero de caracteres no resultado for menor que 11, ent??o o resultado
ser?? preenchido ?? direita com brancos at?? o comprimento 11.
- Se o primeiro argumento for um BIGINT: O comprimento do resultado
ser?? igual a 20.
Se o n??mero de caracteres no resultado for menor que 20, ent??o o resultado
ser?? preenchido ?? direita com brancos at?? o comprimento 20.
Sintaxe de data/hora para caractere
CHAR (Express??oDataHora)
- Express??oDataHora
- Uma express??o de um dos tr??s seguintes tipos de dado:
- DATE: O resultado ?? a representa????o caractere da data.
O comprimento do resultado ?? 10.
- TIME: O resultado ?? a representa????o caractere da hora.
O comprimento do resultado ?? 8.
- TIMESTAMP: O resultado ?? a representa????o caractere do carimbo do
tempo. O comprimento do resultado ?? 26.
Decimal para caractere
CHAR (Express??oDecimal)
- Express??oDecimal
- Uma express??o que retorna um valor com tipo de dado decimal.
Se for desejada uma precis??o e escala diferente, poder?? ser utilizado primeiro
a fun????o escalar DECIMAL para fazer a altera????o.
Sintaxe ponto flutuante para caractere
CHAR (Express??oPontoFlutuante)
- Express??oPontoFlutuante
- Uma express??o que retorna um valor como tipo de dado de ponto flutuante
(DOUBLE ou REAL).
Utilizar a fun????o CHAR para retornar os valores para N??VEL_EDUC (definido
como SMALLINT) como uma cadeia de caracteres de comprimento fixo:
SELECT CHAR(N??VEL_EDUC) FROM EMPREGADOS
Um N??VEL_EDUC igual a 18 retorna como o valor CHAR(6) igual a
'18????????' (18 seguido por quatro brancos).