Rational Developer for System z, Versión 7.6.1

Funciones estándar en ESQL

En este tema se describen brevemente las funciones estándar que se incluyen en el subconjunto de ESQL soportado por las herramientas de proyecto de flujo de servicio.

Importante: Es posible que una función descrita en este tema (por ejemplo, CASE) no soporte todas las características o los parámetros de entrada opcionales (por ejemplo, el parámetro de entrada opcional FORMAT) que la función con el mismo nombre (CASE) soporta en la versión completa de ESQL proporcionada por WebSphere Message Broker. Sólo se da soporte a los parámetros de entrada y características especificadas en este tema.
Importante: Para comprender totalmente una característica descrita en este tema, debe leer toda la descripción de la característica en la documentación para WebSphere Message Broker (consulte la sección Trabajos de referencia que describen ESQL).
Las descripciones de las funciones de este tema utilizan los siguientes convenios de texto:

Muchos de los parámetros de entrada descritos en este tema se pueden especificar como un valor literal, un mensaje o una expresión. Si un parámetro de entrada es una expresión, la función evalúa la expresión y obtiene el valor resultante antes de continuar con el proceso.

Este tema contiene los subtemas siguientes:

Funciones de manipulación de variables

La tabla siguiente muestra las funciones de manipulación de variables soportadas:

Tabla 1. Funciones de manipulación de variables
Función: Descripción:

CASE valor_origen
     WHEN valor_prueba
           THEN valor_resultado
     WHEN valor_prueba
           THEN valor_resultado
   ...
[ELSE expresión de resultado]
END

En tiempo de ejecución, esta función empieza a comprobar cada cláusula WHEN...THEN especificada, por orden, empezando por la primera.
  • En cada cláusula WHEN...THEN, la función CASE comprueba si el valor de prueba especificado en la cláusula WHEN...THEN coincide con (es decir, es igual a) el valor origen que se indica inmediatamente después de la palabra clave CASE.
  • Si el valor de prueba especificado en la cláusula WHEN...THEN coincide con el valor origen, la función CASE no comprueba más cláusulas WHEN...THEN y devuelve el valor del resultado especificado en la cláusula WHEN...THEN con el valor origen que coincide.
  • Si la función CASE comprueba todas las cláusulas WHEN...THEN sin encontrar un valor de prueba que coincida con el valor origen, la función devuelve NULL, o si se especifica la cláusula ELSE, la función devuelve la expresión del resultado especificada por la cláusula ELSE.
Se aplican las siguientes normas:
  • Como mínimo se debe especificar una cláusula WHEN...THEN.
  • Se necesita la palabra clave END.
  • El valor de prueba de cada cláusula WHEN...THEN debe pertenecer a un tipo de datos que pueda compararse de forma válida con el tipo de datos del valor origen.
CAST (expresión_origen AS tipo_datos) Devuelve el valor de la conversión temporal de la expresión origen especificada al tipo de datos especificado.
  • El tipo de datos debe ser CHARACTER (o CHAR), INTEGER (o INT) o FLOAT.
  • El valor devuelto pertenece al tipo de datos especificado por el parámetro de entrada de tipo de datos o NULL si la expresión origen es NULL.
  • Si la expresión origen evaluada no se puede convertir temporalmente al tipo de datos especificado, se genera un error de tiempo de ejecución.

Funciones de proceso de serie

La tabla siguiente muestra las funciones de proceso de serie soportadas:

Tabla 2. Funciones de proceso de serie
Función: Descripción:
LENGTH (serie_origen) Devuelve un entero que especifica el número de elementos de la serie origen.
  • La serie origen debe ser una serie CHARACTER.
  • El valor devuelto es un entero, o NULL si la serie origen es NULL.
LOWER (serie_origen) y LCASE (serie_origen) Devuelve una nueva serie que contiene la serie origen en minúsculas.
  • La serie origen debe ser una serie CHARACTER.
  • El valor devuelto es una serie CHARACTER, o NULL si la serie origen es NULL.
OVERLAY (serie_origen PLACING serie_superpuesta FROM posición_inicial [FOR longitud_serie]) Devuelve una nueva serie que contiene la serie origen preformateada con la serie superpuesta, que empieza en la posición de inicio especificada en la serie origen y que ocupa la longitud de serie especificada.
  • La serie origen y la serie superpuesta deben ser series CHARACTER.
  • La posición de inicio y la longitud de la serie deben ser enteros.
  • El valor devuelto es una serie CHARACTER, o NULL si el parámetro de entrada es NULL.
  • Si no se especifica el parámetro de longitud de serie, la función establece este valor en la longitud de la serie superpuesta.
SPACE (expresión_numérica) Devuelve una nueva serie que consiste en el número de caracteres de espacio especificado por el parámetro de entrada.
  • El parámetro de entrada debe ser un entero.
  • El valor devuelto es una serie CHARACTER, o NULL si el parámetro de entrada es NULL. Si el parámetro de entrada es cero o negativo, se devuelve una serie de longitud cero.
SUBSTRING (serie_origen FROM posición_inicial [FOR longitud_serie]) Devuelve una nueva serie que contiene el rango de caracteres en la serie origen que se ha especificado por los parámetros de posición de inicio y longitud de serie.
  • La serie origen debe ser una serie CHARACTER. La posición de inicio y la longitud de serie deben ser enteros.
  • El valor devuelto es una serie CHARACTER, o NULL si el parámetro de entrada es NULL.
  • Si no se especifica el parámetro de longitud de serie, la función establece este valor en el número de caracteres que quedan en la serie, empezando en la posición de inicio.
UPPER (serie_origen y UCASE (serie_origen Devuelve una nueva serie que contiene la serie origen en mayúsculas.
  • La serie origen debe ser una serie CHARACTER.
  • El valor devuelto es una serie CHARACTER, o NULL si la serie origen es NULL.

Funciones de proceso numérico

Para todas las funciones de proceso numérico descritas en este subtema:
  • El valor de entrada puede ser cualquier tipo numérico (consulte la sección Tipos de datos NUMERIC).
  • El valor devuelto es FLOAT, o es NULL si el parámetro de entrada es NULL.

La tabla siguiente muestra las funciones de proceso numérico soportadas:

Tabla 3. Funciones de proceso numérico
Función: Descripción:
ACOS (expresión_numérica) Devuelve el ángulo en radianes del coseno especificado.
ASIN (expresión_numérica) Devuelve el ángulo en radianes del seno especificado.
ATAN (expresión_numérica) Devuelve el ángulo en radianes de la tangente especificada.
COS (expresión_numérica) Devuelve el coseno del ángulo especificado, en radianes.
SIN (expresión_numérica) Devuelve el seno del ángulo especificado, en radianes.
TAN (expresión_numérica) Devuelve la tangente del ángulo especificado, en radianes.
LOG (expresión_numérica) Devuelve el logaritmo natural del valor de entrada especificado.
LOG10 (expresión_numérica) Devuelve el logaritmo en base 10 del valor de entrada especificado.
SQRT (expresión_numérica) Devuelve la raíz cuadrada del valor de entrada especificado.

Funciones de proceso de fecha y hora

Nota: En estas funciones de proceso de fecha y hora, así como en todas las funciones de ESQL que no utilizan parámetros, no se permiten los paréntesis () después del nombre de función.

La tabla siguiente muestra las funciones de proceso de fecha y hora soportadas:

Tabla 4. Funciones de proceso de fecha y hora
Función: Descripción:
CURRENT_DATE Devuelve una serie de 8 caracteres que contiene aaaammdd.
CURRENT_TIME Devuelve una serie de 8 caracteres que contiene HHmmsshh.
TIMESTAMP Devuelve una serie de 16 caracteres que contiene aaaammddHHmmsshh.


Términos de uso | Comentarios

Este Information Center está basado en tecnología Eclipse. (http://www.eclipse.org)