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 sólo desea saber si una lista contiene exactamente un elemento u otra cantidad 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).
Una utilización común de esta función es 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.XML.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.XML.Data.Source.F1[] AS F where F = 'F12');