COUNT_IF (Lakehouse v1)
O sufixo _IF pode ser acrescentado ao nome de qualquer função de agregação. Nesse caso, a função de agregação aceita um argumento extra: uma condição.
Sintaxe do Analyze
Seção intitulada “Sintaxe do Analyze”func.count_if(<column>, <cond>)Exemplos do Analyze
Seção intitulada “Exemplos do Analyze”func.count_if(table.status, table.status=='Completed').alias('completed_orders')
| completed_orders ||------------------|| 3 |Exemplo de SQL
Seção intitulada “Exemplo de SQL”COUNT_IF(<column>, <cond>)Exemplos de SQL
Seção intitulada “Exemplos de SQL”Criar uma tabela e inserir dados de exemplo
CREATE TABLE orders ( id INT, customer_id INT, status VARCHAR, total FLOAT);
INSERT INTO orders (id, customer_id, status, total)VALUES (1, 1, 'completed', 100), (2, 2, 'completed', 200), (3, 1, 'pending', 150), (4, 3, 'completed', 250), (5, 2, 'pending', 300);Demonstração de consulta: contar pedidos concluídos
SELECT COUNT_IF(status, status = 'completed') AS completed_ordersFROM orders;Resultado
| completed_orders ||------------------|| 3 |