La función EXISTS devuelve un valor BOOLEANO que indica si una lista contiene al menos un elemento (es decir, si la lista existe).
Si la lista especificada por ExpresiónLista contiene uno o más elementos, EXISTS devuelve TRUE. Si la lista no contiene ningún elemento, EXISTS devuelve FALSE.
Si sólo desea saber si una lista contiene algún elemento o no contiene ninguno, EXISTS se ejecuta más rápidamente que una expresión que implique la función CARDINALITY (por ejemplo, CARDINALITY(ExpresiónLista ) <> 0).
Una utilización común de esta función es determinar la existencia de un campo.
-- Determinar si la matriz F1 existe en el mensaje. Observe que los -- corchetes [ ] son necesarios. DECLARE Field1Exists BOOLEAN EXISTS(OutputRoot.XML.Data.Source.F1[]);
-- Determinar si la matriz F1 contiene un elemento con el valor 'F12'. -- Observe de nuevo que los corchetes [ ] son necesarios DECLARE Field1F12Exists BOOLEAN EXISTS(SELECT F.* FROM OutputRoot.XML.Data.Source.F1[] AS F where F = 'F12');