A função CONTAINSROW no Power BI é bem parecida com aquele detector de amigo falso: ela vai verificar se uma linha tá presente numa tabela ou numa expressão de tabela. Sabe quando você vai contar quem apareceu no churrasco e olha quem tá lá ou não? É mais ou menos isso! Ela vê se a linha que você tá buscando tá presente numa lista de linhas que você deu pra ela, e se tiver, ela te dá um “verdadeiro”, senão, vai te devolver um “falso” na cara dura.
Olha só a sintaxe dessa belezura:
DAXCopiar códigoCONTAINSROW( Table, Column1, Value1 [, Column2, Value2] [, Column3, Value3]...)
Agora, bora ver isso em ação com uns exemplos pra deixar as coisas mais claras que água de cachoeira!
Exemplo 1: Tá na tabela ou não tá?
DAXCopiar códigoCONTAINSROW( 'Clientes', 'Clientes'[Cidade], "Belo Horizonte" )
Aqui, a função tá vendo se existe uma linha na tabela Clientes onde a Cidade é Belo Horizonte. É como se você estivesse checando se o Tião apareceu na festa de BH.
Exemplo 2: Mais de uma coluna
DAXCopiar códigoCONTAINSROW( 'Vendas', 'Vendas'[Produto], "Queijo", 'Vendas'[Ano], 2023 )
Esse aqui já é mais detalhado. Tamo vendo se na tabela de Vendas teve uma venda de Queijo em 2023. Tipo checando se compraram aquele queijim artesanal no ano passado.
Exemplo 3: Procurando o pão de queijo
DAXCopiar códigoCONTAINSROW( 'Comidas', 'Comidas'[Item], "Pão de Queijo", 'Comidas'[Quantidade], 100 )
Aqui você tá vendo se rolou aquela encomenda de 100 pães de queijo na tabela Comidas. Porque ninguém sobrevive a um evento mineiro sem essa iguaria, né?
Exemplo 4: Rodízio de feijão tropeiro
DAXCopiar códigoCONTAINSROW( 'Cardápio', 'Cardápio'[Prato], "Feijão Tropeiro" )
Tá conferindo se o Feijão Tropeiro tá no cardápio, porque se não tiver, uai, pode cancelar o evento!
Exemplo 5: Tem café no bule?
DAXCopiar códigoCONTAINSROW( 'Bebidas', 'Bebidas'[Bebida], "Café", 'Bebidas'[Temperatura], "Quente" )
Se esse não for o café mais mineiro do mundo, eu não sei o que é. Aqui a gente tá vendo se tem café quente disponível na tabela de Bebidas. Café frio não tem vez aqui, sô!
Exemplo 6: Comprovando a cachaça
DAXCopiar códigoCONTAINSROW( 'Bebidas', 'Bebidas'[Bebida], "Cachaça", 'Bebidas'[Graduação], 40 )
Tá na dúvida se a cachaça que o João trouxe é de qualidade? Olha aí se a graduação alcoólica tá em 40. Se tiver menos, cê já sabe que é batizada.
Exemplo 7: Checando a sobremesa
DAXCopiar códigoCONTAINSROW( 'Sobremesas', 'Sobremesas'[Doce], "Doce de Leite" )
Não tem como faltar doce de leite em qualquer evento mineiro, e aqui a gente vê se ele tá presente na lista de Sobremesas. Se não tiver, o trem tá feio!
Exemplo 8: Qual é a sobremesa do ano?
DAXCopiar códigoCONTAINSROW( 'Sobremesas', 'Sobremesas'[Doce], "Ambrosia", 'Sobremesas'[Ano], 2024 )
Agora, estamos confirmando se a Ambrosia foi a sobremesa escolhida para o ano de 2024. Se não for, bora reclamar!
Exemplo 9: Tá na lista VIP?
DAXCopiar códigoCONTAINSROW( 'Convidados', 'Convidados'[Nome], "Zezé", 'Convidados'[Evento], "Casamento" )
Verificando se o Zezé tá na lista VIP pro Casamento. Não quer que ele fique de fora, né?
Exemplo 10: Cadê o requeijão?
DAXCopiar códigoCONTAINSROW( 'Queijos', 'Queijos'[Tipo], "Requeijão", 'Queijos'[Quantidade], 50 )
Por último, checando se ainda tem 50 potes de requeijão disponíveis. Porque se acabar, cê sabe que vai ter reclamação!
Esses exemplos aí são só o começo do que você pode fazer com a CONTAINSROW. Quando o assunto é verificar se algo tá presente em uma tabela ou lista, essa função é tão útil quanto uma boa xícara de café passado na hora!