Función escalar TO_SINGLE_BYTE

La función TO_SINGLE_BYTE devuelve una serie en la que caracteres de varios bytes se convierten en el carácter de un byte equivalente donde existe un carácter equivalente.

Leer el esquema de sintaxisOmitir el esquema de sintaxis visualTO_SINGLE_BYTE(expresión-serie )

El esquema es SYSIBM.

Sólo se convertirán los caracteres que tienen un equivalente a los caracteres de un byte representados por los caracteres en el rango de puntos de código UTF-8 de U+0020 a U+007E. Si un carácter de diversos bytes no tiene un equivalente de un solo byte, no cambia.

Esta función sólo recibe soporte para la base de datos creadas en Unicode y la página de códigos IBM-943 (SQLCODE 42997).

expresión-serie
Expresión que especifica la serie que se convertirá. La expresión debe devolver un valor que sea un tipo de datos incorporado CHAR o VARCHAR. En una base de datos Unicode, si un argumento proporcionado es un tipo de datos GRAPHIC o VARGRAPHIC, se convertirá a VARCHAR antes de que se evalúe la función. La expresión no puede ser una serie de caracteres definida como FOR BIT DATA (SQLSTATE 42815).

El tipo de datos, la página de códigos y el atributo de longitud del resultado es el mismo que el tipo de datos, la página de códigos y el atributo de longitud del argumento. Si el argumento puede ser nulo, el resultado puede ser nulo. Si el argumento es nulo, el resultado es el valor nulo.

Ejemplo

Convertir los caracteres UTF-8 de ancho completo 'ABC' (x'efbca1efbca2efbca3' en formato hexadecimal) en sus equivalentes de un solo byte.

   VALUES TO_SINGLE_BYTE(x'efbca1efbca2efbca3')

El resultado es el valor 'ABC' (x'414243' en formato hexadecimal).