Die Funktion SINGULAR gibt einen Booleschen Wert zurück, der anzeigt, ob eine Liste genau ein Element enthält.
Enthält die von ListExpression (Listenausdruck) angegebene Liste genau ein Element, gibt die SINGULAR-Funktion den Wert TRUE zurück. Wenn die Liste mehr oder weniger Elemente als 1 enthält, gibt SINGULAR den Wert FALSE zurück.
Wenn Sie lediglich wissen möchten, ob eine Liste ein einziges oder mehrere Elemente enthält, liefert SINGULAR ein schnelleres Ergebnis als ein Ausdruck mit der Funktion CARDINALITY (z. B. CARDINALITY(ListExpression ) = 1).
In der Regel wird mit dieser Funktion ermittelt, ob ein Feld eindeutig ist.
-- Bestimmen, ob nur ein F1-Feld in der Nachricht vorhanden ist.
-- [ ] sind erforderlich.
DECLARE Field1Unique BOOLEAN SINGULAR(OutputRoot.XMLNS.Data.Source.F1[]);
-- Bestimmen, ob nur ein F1-Feld mit dem Wert 'F12'
-- in der Nachricht vorhanden ist. Auch hier sind [ ] erforderlich.
DECLARE Field1F12Unique BOOLEAN
SINGULAR(SELECT F.* FROM OutputRoot.XMLNS.Data.Source.F1[] AS F where F = 'F12');