Función CARDINALITY

La función CARDINALITY devuelve el número de elementos en una lista.

SINTAXIS

CARDINALITY devuelve un valor entero que proporciona el número de elementos en la lista especificada mediante ExpresiónLista.

ExpresiónLista es cualquier expresión que devuelve una lista. Por ejemplo, todos los elementos siguientes devuelven una lista:
  • Un constructor LIST
  • Una referencia de campo con el indicador de matriz []
  • Algunas expresiones SELECT (no todas devuelven una lista)

Una utilización común de esta función es determinar el número de campos en una lista, antes de repetir sobre ellos.

Ejemplos

-- Determinar el número de campos F1 en el mensaje.
-- Observe que los corchetes [ ] son necesarios   
DECLARE CountF1 INT CARDINALITY(OutputRoot.XML.Data.Source.F1[]);
-- Determinar el número de campos denominados F1 con el valor 'F12' en el mensaje.
-- Observe de nuevo que los corchetes [ ] son necesarios
DECLARE CountF1F12 INT     
  CARDINALITY(SELECT F.* FROM OutputRoot.XML.Data.Source.F1[] AS F where F = 'F12');
-- Utilizar el valor devuelto por CARDINALITY para hacer referencia a 
-- un elemento específico en una lista o matriz:
-- Los índices de la matriz empiezan por 1, por lo que este ejemplo hace
--  referencia a la antepenúltima instancia del campo Item
Body.Invoice.Item[CARDINALITY(Body.Invoice.Item[]) - 2].Quantity
Conceptos relacionados
Visión general de ESQL
Tareas relacionadas
Desarrollo de ESQL
Referencia relacionada
Función EXISTS
Función SINGULAR
Función THE
Diagramas de sintaxis: tipos disponibles
Funciones de lista ESQL
Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Su opinión
Copyright IBM Corporation 1999, 2006 Última actualización: 22/08/2006
ak05530_