Operadores Logicos
Entenda como combinar filtros usando operadores logicos para criar segmentacoes precisas.
Conceitos Basicos
Operador AND (E)
Definicao: Todas as condicoes devem ser verdadeiras.
Condicao A: Usuario comprou
Condicao B: Valor > R$ 100
A AND B = Usuario comprou E valor foi > R$ 100
Tabela verdade:
| A | B | A AND B |
|---|---|---|
| V | V | V |
| V | F | F |
| F | V | F |
| F | F | F |
Operador OR (OU)
Definicao: Pelo menos uma condicao deve ser verdadeira.
Condicao A: Usuario e VIP
Condicao B: Usuario comprou mais de 5x
A OR B = Usuario e VIP OU comprou mais de 5x
Tabela verdade:
| A | B | A OR B |
|---|---|---|
| V | V | V |
| V | F | V |
| F | V | V |
| F | F | F |
Operador NOT (NAO)
Definicao: Inverte o resultado da condicao.
Condicao A: Usuario cancelou
NOT A = Usuario NAO cancelou
Tabela verdade:
| A | NOT A |
|---|---|
| V | F |
| F | V |
Estrutura no NotifyChain
Regras dentro de uma Caixa = AND
Todas as regras na mesma caixa sao combinadas com AND:
┌─────────────────────────────────────────┐
│ CAIXA 1 │
│ │
│ Regra 1: Comprou nos ultimos 30 dias │
│ AND │
│ Regra 2: Valor > R$ 200 │
│ AND │
│ Regra 3: Categoria = "eletronicos" │
│ │
└─────────────────────────────────────────┘
Resultado: Usuario que comprou eletronico > R$ 200 nos ultimos 30 dias
Caixas diferentes = OR
Caixas separadas sao combinadas com OR:
┌─────────────────────────────────────────┐
│ CAIXA 1 │
│ Comprou nos ultimos 30 dias │
└─────────────────────────────────────────┘
OU
┌─────────────────────────────────────────┐
│ CAIXA 2 │
│ E cliente VIP │
└─────────────────────────────────────────┘
Resultado: Usuario que comprou recentemente OU e VIP
Combinacoes Complexas
AND + OR
Combine caixas e regras para logica complexa:
┌─────────────────────────────────────────┐
│ CAIXA 1 │
│ Cidade = "Sao Paulo" │
│ AND │
│ Idade >= 25 │
└─────────────────────────────────────────┘
OU
┌─────────────────────────────────────────┐
│ CAIXA 2 │
│ Cidade = "Rio de Janeiro" │
│ AND │
│ Idade >= 25 │
└─────────────────────────────────────────┘
Logica: (SP AND idade>=25) OR (RJ AND idade>=25)
Equivalente: (SP OR RJ) AND idade>=25
Multiplas Caixas OR
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ CAIXA 1 │ │ CAIXA 2 │ │ CAIXA 3 │
│ Comprou 1x │OU │ Cadastrou │OU │ Indicou │
│ valor > 500 │ │ ha 7 dias │ │ amigo │
└──────────────┘ └──────────────┘ └──────────────┘
Usuario atende se qualquer uma das caixas for verdadeira
AND Aninhado
Para AND entre grupos, crie audiencias separadas:
Audiencia 1: "Compradores SP"
- Cidade = SP
- Comprou nos ultimos 30 dias
Audiencia 2: "Engajados"
- Abriu email nos ultimos 14 dias
Audiencia Final: "Compradores SP Engajados"
- Esta em "Compradores SP"
- AND
- Esta em "Engajados"
Ordem de Avaliacao
Precedencia
- Primeiro: Regras dentro de cada caixa (AND)
- Depois: Caixas entre si (OR)
Caixa 1: (A AND B AND C)
Caixa 2: (D AND E)
Avaliacao: (A AND B AND C) OR (D AND E)
Parenteses Implicitos
Cada caixa funciona como um grupo com parenteses:
Visual:
┌─────────┐ ┌─────────┐
│ A AND B │ OR │ C AND D │
└─────────┘ └─────────┘
Logico:
(A AND B) OR (C AND D)
NAO e o mesmo que:
A AND B OR C AND D = A AND (B OR C) AND D ← Errado!
Exemplos Praticos
Exemplo 1: Clientes Ativos em SP ou RJ
Requisito: Usuarios que compraram no ultimo mes E moram em SP OU RJ
Errado (logica incorreta):
Caixa 1:
- Comprou nos ultimos 30 dias
- Cidade = SP
OR
Caixa 2:
- Cidade = RJ
→ Inclui TODOS de RJ, mesmo sem compra!
Correto:
Caixa 1:
- Comprou nos ultimos 30 dias
- Cidade = SP
OR
Caixa 2:
- Comprou nos ultimos 30 dias
- Cidade = RJ
→ Apenas quem comprou E mora em SP ou RJ
Exemplo 2: Usuarios Engajados OU Premium
Requisito: Usuarios que abriram email recentemente OU sao premium
Caixa 1:
- Abriu email nos ultimos 7 dias
- Clicou em email nos ultimos 7 dias
OR
Caixa 2:
- Plano = premium
→ Engajados (abriu E clicou) OU premium
Exemplo 3: Exclusao com NOT
Requisito: Compradores que NAO cancelaram
Caixa 1:
- Comprou (sempre)
- NAO esta no segmento "Cancelados"
→ Usando filtro de segmento com exclusao
Exemplo 4: Logica Complexa
Requisito: (VIP OU gastou >1000) E (nao cancelou) E (ativo no ultimo mes)
Abordagem com audiencias intermediarias:
Audiencia "VIP ou Alto Valor":
Caixa 1: Plano = VIP
OR
Caixa 2: Soma(compras) > 1000
Audiencia "Nao Cancelados":
Caixa 1: NAO evento "Cancelamento"
Audiencia Final:
Caixa 1:
- Esta em "VIP ou Alto Valor"
- Esta em "Nao Cancelados"
- Login nos ultimos 30 dias
Armadilhas Comuns
Armadilha 1: OR Indesejado
Intencao: Usuarios de SP que compraram eletronicos
Errado:
Caixa 1: Cidade = SP
OR
Caixa 2: Categoria = eletronicos
→ TODOS de SP + TODOS que compraram eletronicos
Correto:
Caixa 1:
- Cidade = SP
- Categoria = eletronicos
→ Apenas quem atende AMBOS
Armadilha 2: NOT no Lugar Errado
Intencao: Usuarios que nao compraram eletronicos
Errado:
Caixa 1:
- Comprou nos ultimos 30 dias
- Categoria != eletronicos
→ Inclui quem comprou outras categorias, mas pode ter comprado eletronicos tambem
Correto:
Caixa 1:
- NAO realizou evento "Compra" com categoria = eletronicos
→ Exclui quem comprou qualquer eletronico
Armadilha 3: Esquecer Condicoes em OR
Intencao: Usuarios novos de SP ou RJ que se cadastraram essa semana
Errado:
Caixa 1: Cidade = SP AND Cadastro essa semana
OR
Caixa 2: Cidade = RJ
→ Todos de RJ, sem filtro de data!
Correto:
Caixa 1: Cidade = SP AND Cadastro essa semana
OR
Caixa 2: Cidade = RJ AND Cadastro essa semana
Dicas de Validacao
Verifique a Estimativa
Apos cada alteracao, confira se o numero faz sentido:
- Muito alto? Pode estar faltando AND
- Muito baixo? Pode estar faltando OR
- Zero? Condicoes impossiveis
Teste com Usuarios Conhecidos
- Identifique usuarios que DEVEM estar na audiencia
- Identifique usuarios que NAO devem estar
- Verifique se a logica inclui/exclui corretamente
Leia em Voz Alta
Traduza a logica para linguagem natural:
"Usuarios que (compraram no ultimo mes E valor > 200) OU (sao VIP)"
Se fizer sentido quando falado, provavelmente esta correto.