Sous-requête AQL
Utilisez une sous-requête AQL comme source de données référencée ou recherchée par la requête principale. Utilisez la clause FROM ou IN pour affiner votre requête AQL en faisant référence aux données qui sont extraites par la sous-requête.
Une sous-requête est une requête imbriquée ou interne qui est référencée par la requête principale. La sous-requête est disponible dans les formats suivants :
SELECT<field/s>FROM(<expression de requête AQL>)Cette requête utilise la clause
FROMpour rechercher la sortie (curseur) de la sous-requête.SELECT<field/s>FROMeventsWHERE<field>IN(<expression de requête AQL>)Cette requête utilise la clause
INpour indiquer les résultats de sous-requête qui correspondent aux valeurs de la recherche de sous-requête. Cette sous-requête renvoie uniquement une seule colonne. Vous pouvez spécifier la limite de résultats, mais le maximum est de 10 000 résultats.
Exemples de sous-requête
L'instruction SELECT imbriquée est entre parenthèses dans la sous-requête. La sous-requête est exécutée en premier et elle fournit les données qui sont utilisées par la requête principale. L'instruction SELECT de la requête principale extrait les noms d'utilisateur de la sortie (curseur) de la sous-requête.
SELECT username FROM
(SELECT * FROM events
WHERE username IS NOT NULL
LAST 60 MINUTES)SELECT * FROM events
WHERE username IN
(SELECT username FROM events
LIMIT 10 LAST 5 MINUTES) LAST 24 HOURSSELECT * FROM EVENTS
WHERE sourceip IN
(SELECT destinationip FROM events)SELECT sourceip AS 'Risky Hosts' FROM events
WHERE destinationip IN (SELECT sourceip FROM events
WHERE eventdirection = 'L2R'
AND REFERENCESETCONTAINS('CriticalWatchList', destinationip)
GROUP BY sourceip)
GROUP BY sourceip last 24 hours