Dada a lista de categorias e subcategorias:
CatA SubCatA
CatA SubCatA
CatB SubCatB
CatB SubCatB
CatC SubCatC
CatC SubCatC
Gostaria de retornar todas as categorias principais exclusivas com base na categoria secundária.
Eu não quero usar:
=QUERY(A1:B6,"SELECT A WHERE B = 'SubCatA'")
pois está retornando a lista com duplicatas (o retorno do primeiro elemento também não ajuda).
O que estou tentando é:
=QUERY(A1:B6,"SELECT A WHERE B = 'SubCatA' GROUP BY A")
mas isso me dá o erro:, CANNOT_GROUP_WITHOUT_AGG
portanto, estou tentando encontrar algo equivalente a um DISTINCT(A)
ou outro UNIQUE(A)
, mas essas funções não existem.
Existe alguma função no Query Language da API de visualização do Google equivalente a DISTINCT / UNIQUE para retornar a lista de valores exclusivos?
Você precisa adicionar uma coluna auxiliar dentro da
QUERY
fórmula, da seguinte maneira:Adicionar outra
QUERY
fórmula ajudará a remover a coluna auxiliar:fonte
Além de usar a sempre útil função UNIQUE ao redor do FILTER, como
user79865
sugere, você também pode usar o UNIQUE ao redor da função QUERY original (que pode ser mais aplicável e útil em outros cenários para preservar as opções e a flexibilidade do QUERY quando o FILTRO não é suficiente )Igual a:
=UNIQUE(QUERY(A1:B6,"SELECT A WHERE B = 'SubCatA'"))
fonte
Solução sem funções auxiliares / invólucro:
fonte
Use a
Unique(range)
funçãoExemplo:
Isso funcionará na recuperação de uma coluna. Você pode usar esta técnica para explorar ainda mais sua tarefa. Isto é mais fácil. A, B, C são colunas da Planilha2, enquanto E1, E2 são da planilha atual cercada por &.
fonte
O OP pergunta especificamente via Google QUERY, mas existe um precedente de que outro A não exija uma QUERY e a IMO uma solução melhor (porque mais abrangente e versátil) seria aplicar uma tabela dinâmica:
Isso (e o outro As) seriam melhores demonstrações de soluções se a amostra de dados fosse mais realista.
fonte
Que tal apenas:
fonte