Exists (DMX)

Restituisce true se la sottoquery specificata restituisce almeno una riga.

Sintassi

EXISTS(<subquery>)

Argomenti

  • subquery
    Un'istruzione SELECT del modulo SELECT * FROM <nome della colonna> [<elenco predicati> WHERE].

Tipo di risultato

Restituisce true se il set di risultati restituito dalla sottoquery contiene almeno una riga. In caso contrario, restituisce false.

Osservazioni

È possibile utilizzare la parola chiave NOT prima di EXISTS: ad esempio, WHERE NOT EXISTS (<subquery>).

L'elenco di colonne aggiunte all'argomento della sottoquery di EXISTS è irrilevante. Viene solo verificata l'esistenza di una riga che soddisfa la condizione.

Esempi

È possibile utilizzare EXISTS e NOT EXISTS per verificare le condizioni in una tabella nidificata. Ciò è utile durante la creazione di un filtro che controlla i dati utilizzati per eseguire il training o il testing di un modello di data mining. Per ulteriori informazioni, vedere Creazione di filtri per i modelli di data mining (Analysis Services - Data mining).

L'esempio seguente si basa sulla struttura di data mining [Association] e sul modello di data mining creato in Esercitazione di base sul data mining. La query restituisce solo i casi in cui il cliente ha acquistato almeno un Patch kit.

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

È possibile visualizzare gli stessi dati restituiti dalla query anche aprendo il modello nel visualizzatore associazioni, facendo clic con il pulsante destro del mouse sul set di elementi Patch kit = Existing, selezionare l'opzione Drill-through, quindi Solo case del modello.