Saltar al contenido principal

Descripción

El combinador If se puede aplicar a la función count para contar el número de filas en las que se cumple la condición, mediante la función de combinador agregado countIf.

Ejemplo de uso

En este ejemplo, crearemos una tabla que almacena los intentos de inicio de sesión de los usuarios y usaremos countIf para contar el número de inicios de sesión correctos.
Query
CREATE TABLE login_attempts(
    user_id UInt32,
    timestamp DateTime,
    is_successful UInt8
) ENGINE = MergeTree
ORDER BY ();

INSERT INTO login_attempts VALUES
    (1, '2024-01-01 10:00:00', 1),
    (1, '2024-01-01 10:05:00', 0),
    (1, '2024-01-01 10:10:00', 1),
    (2, '2024-01-01 11:00:00', 1),
    (2, '2024-01-01 11:05:00', 1),
    (2, '2024-01-01 11:10:00', 0);

SELECT
    user_id,
    countIf(is_successful = 1) AS successful_logins
FROM login_attempts
GROUP BY user_id;
La función countIf contará únicamente las filas en las que is_successful = 1 para cada usuario.
Response
   ┌─user_id─┬─successful_logins─┐
1. │       1 │                 2 │
2. │       2 │                 2 │
   └─────────┴───────────────────┘

Véase también

Última modificación el 10 de junio de 2026