RowCount
Descrição
A função RowCount retorna o número de linhas contidas em um rowset ou array. É uma das funções mais usadas no dia a dia de AMPscript, já que quase sempre você precisa saber quantos registros uma consulta retornou antes de iterar sobre eles ou decidir o que exibir. Na prática, você vai usar essa função junto com LookupRows, LookupOrderedRows e outras funções que retornam rowsets para controlar a lógica dos seus e-mails e CloudPages.
Sintaxe
RowCount(@rowset)
Parâmetros
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| rowset | String | Sim | O rowset ou array para o qual você quer saber o número de linhas. |
Exemplo básico
Consultando uma Data Extension de CEPs e contando quantas linhas existem para a cidade de São Paulo:
%%[
SET @linhas = LookupRows("CodigosPostais", "Cidade", "São Paulo")
SET @totalLinhas = RowCount(@linhas)
]%%
Encontramos %%=v(@totalLinhas)=%% CEPs cadastrados para São Paulo.
Saída:
Encontramos 47 CEPs cadastrados para São Paulo.
Exemplo avançado
Verificando se um cliente da MegaStore possui pedidos recentes antes de exibir o histórico de compras no e-mail de régua de relacionamento:
%%[
SET @emailCliente = AttributeValue("EmailAddress")
SET @pedidos = LookupRows("Pedidos", "Email", @emailCliente)
SET @totalPedidos = RowCount(@pedidos)
IF @totalPedidos > 0 THEN
SET @ultimoPedido = Row(@pedidos, 1)
SET @numeroPedido = Field(@ultimoPedido, "NumeroPedido")
SET @valorPedido = Field(@ultimoPedido, "Valor")
]%%
Olá! Você tem %%=v(@totalPedidos)=%% pedido(s) na MegaStore.
Seu pedido mais recente: #%%=v(@numeroPedido)=%%
Valor: R$ %%=FormatNumber(@valorPedido, "N", 2)=%%
%%[ ELSE ]%%
Olá! Você ainda não tem pedidos na MegaStore. Que tal conhecer nossas ofertas?
%%[ ENDIF ]%%
Saída:
Olá! Você tem 3 pedido(s) na MegaStore.
Seu pedido mais recente: #98210
Valor: R$ 1.299,90
Observações
⚠️ Atenção: Sempre verifique o resultado de
RowCountantes de tentar acessar linhas comRoweField. Se o rowset estiver vazio e você tentar acessar uma linha diretamente, vai gerar erro no processamento do e-mail.
💡 Dica: O padrão mais comum em AMPscript é o combo
LookupRows→RowCount→IF→ loop comRoweField. Esse fluxo aparece em praticamente todo e-mail que precisa buscar dados dinâmicos de uma Data Extension. Domine esse padrão e você resolve a maioria dos cenários.
Funções relacionadas
LookupRows- busca linhas em uma Data Extension (retorna o rowset que você passa paraRowCount)LookupOrderedRows- busca linhas ordenadas em uma Data ExtensionRow- acessa uma linha específica dentro do rowsetField- extrai o valor de uma coluna de uma linhaDataExtensionRowCount- retorna o total de linhas de uma Data Extension inteira (sem filtro)BuildRowsetFromString- cria um rowset a partir de uma string delimitada