La función SINGULAR devuelve un valor booleano que indica si una lista contiene exactamente un elemento.
Si la lista especificada por ExpresiónLista contiene exactamente un elemento, SINGULAR devuelve TRUE. Si la lista contiene más o menos elementos, SINGULAR devuelve FALSE.
Si desea saber únicamente si una lista contiene exactamente un elemento u otro número de elementos, SINGULAR se ejecuta más rápidamente que una expresión que implique la función CARDINALITY (por ejemplo, CARDINALITY(ExpresiónLista) = 1).
Un uso típico de esta función es el de determinar si un campo es exclusivo.
-- Determinar si hay un solo campo F1 en el mensaje.
-- Observe que los corchetes [ ] son necesarios
DECLARE Field1Unique BOOLEAN SINGULAR(OutputRoot.XMLNS.Data.Source.F1[]);
-- Determinar si hay un solo campo denominado F1 con el valor 'F12'
-- en el mensaje. Observe de nuevo que los corchetes [ ] son necesarios
DECLARE Field1F12Unique BOOLEAN
SINGULAR(SELECT F.* FROM OutputRoot.XMLNS.Data.Source.F1[] AS F where F = 'F12');