Exists (DMX)

Devuelve true si la subconsulta especificada devuelve por lo menos una fila.

Sintaxis

EXISTS(<subquery>)

Argumentos

  • subquery
    Instrucción SELECT con el formato SELECT * FROM <nombre de columna> [WHERE<lista de predicados>].

Tipo de resultado

Devuelve true si el conjunto de resultados que devuelve la subconsulta contiene al menos una fila; de lo contrario, devuelve false.

Comentarios

Puede utilizar la palabra clave NOT delante de EXISTS; por ejemplo, WHERE NOT EXISTS (<subquery>).

La lista de columnas que se agrega al argumento de la subconsulta de EXISTS es irrelevante; la función sólo comprueba la existencia de una fila que cumpla la condición.

Ejemplos

Puede utilizar EXISTS y NOT EXISTS para comprobar las condiciones en una tabla anidada. Esto es útil cuando se crea un filtro que controla los datos que se usan para entrenar o probar un modelo de minería de datos. Para obtener más información, vea Crear filtros para modelos de minería de datos (Analysis Services - Minería de datos).

El ejemplo siguiente se basa en la estructura de minería de datos [Association] y en el modelo de minería de datos que creó en Tutorial básico de minería de datos. La consulta devuelve sólo los casos en los que el cliente compró al menos un Patch kit.

SELECT * FROM [Association].CASES
WHERE EXISTS
(
SELECT * FROM [v Assoc Seq Line Numbers]
WHERE [[Model] = 'Patch kit'
)

Otra manera de ver los mismos datos que devuelve esta consulta es abrir el modelo en el visor de asociación, hacer clic con el botón secundario en el conjunto de elementos Patch kit = Existing, seleccionar la opción Obtener detalles y, después, seleccionar Sólo casos del modelo.