Cláusula Having
Utilice la cláusula HAVING en una consulta para aplicar más filtros a datos específicos aplicando filtros a los resultados después de la cláusula GROUP BY.
La cláusula HAVING sigue a la cláusula GROUP BY.
Puede aplicar los filtros siguientes cuando utilice una cláusula HAVING en una consulta:
- signo igual (
=) - No es igual al símbolo (
<>) - Símbolo menor que (
<) - Símbolo Mayor que (
>) - Menor o igual que el símbolo (
<=) - Símbolo mayor o igual que (
>=) BETWEENentre dos valores, por ejemplo (64 AND 512)- Coincidencia sensible a mayúsculas y minúsculas de
LIKE ILIKEcoincidencia no sensible a mayúsculas y minúsculas- Valores totales o promedio de
SUM/AVG - Valores máximos o mínimos de
MAX/MIN
Ejemplos de cláusulas HAVING
El siguiente ejemplo de consulta muestra los resultados de los usuarios que han desencadenado sucesos VPN desde más de cuatro direcciones IP (HAVING 'Count of Source IPs' > 4) en las últimas 24 horas.
SELECT username, UNIQUECOUNT(sourceip) AS 'Count of Source IPs'
FROM events
WHERE LOGSOURCENAME(logsourceid) ILIKE '%vpn%'
AND username IS NOT NULL
GROUP BY username
HAVING "Count of Source IPs" > 4
LAST 24 HOURS
Nota: Cuando escriba una consulta AQL, utilice comillas simples para una comparación de series y utilice comillas dobles para una comparación de valores de propiedad.
El ejemplo de consulta siguiente muestra resultados para sucesos en los que la credibilidad (HAVING
credibility > 5) es mayor que cinco.
SELECT username, sourceip, credibility
FROM events
GROUP BY sourceip
HAVING credibility > 5
LAST 1 HOURSLa consulta siguiente agrupa los resultados por IP de origen, pero sólo muestra los resultados en los que la magnitud (
HAVING magnitude > 5) es mayor que cinco.SELECT sourceIP, magnitude
FROM events
GROUP BY sourceIP
HAVING magnitude > 5