Biorąc pod uwagę listę kategorii i podkategorii:
CatA SubCatA
CatA SubCatA
CatB SubCatB
CatB SubCatB
CatC SubCatC
CatC SubCatC
Chciałbym zwrócić wszystkie unikalne główne kategorie na podstawie kategorii drugorzędnej.
Nie chcę używać:
=QUERY(A1:B6,"SELECT A WHERE B = 'SubCatA'")
ponieważ zwraca listę z duplikatami (zwrócenie pierwszego elementu też nie pomoże).
Próbuję:
=QUERY(A1:B6,"SELECT A WHERE B = 'SubCatA' GROUP BY A")
ale daje mi błąd: CANNOT_GROUP_WITHOUT_AGG
dlatego próbuję znaleźć coś równoważnego albo, DISTINCT(A)
albo UNIQUE(A)
, ale te funkcje nie istnieją.
Czy w języku zapytań interfejsu API Google Visualization jest jakaś funkcja równoważna DISTINCT / UNIQUE do zwracania listy unikalnych wartości?
Musisz dodać kolumnę pomocnika do
QUERY
formuły, na przykład:Dodanie innej
QUERY
formuły pomoże usunąć kolumnę pomocnika:źródło
Oprócz korzystania z zawsze przydatnej funkcji UNIKALNEJ wokół FILTER, jak
user79865
sugeruje, można także używać UNIKALNEJ wokół oryginalnej funkcji QUERY (która może być bardziej przydatna i pomocna w innych scenariuszach, aby zachować opcje i elastyczność QUERY, gdy FILTER nie wystarczy ).Tak jak:
=UNIQUE(QUERY(A1:B6,"SELECT A WHERE B = 'SubCatA'"))
źródło
Rozwiązanie bez funkcji pomocniczych / opakowania:
źródło
Użyj
Unique(range)
funkcji.Przykład:
Działa to przy pobieraniu jednej kolumny. Możesz użyć tej techniki do dalszego badania swojego zadania. To jest łatwiejsze. A, B, C są kolumnami z Arkusza 2, natomiast E1, E2 pochodzą z bieżącego arkusza roboczego otoczonego przez &.
źródło
OP konkretnie pyta za pośrednictwem Google QUERY, ale istnieje precedens, że inne A nie wymaga QUERY, a IMO lepszym rozwiązaniem (ponieważ bardziej wszechstronnym i wszechstronnym) byłoby zastosowanie tabeli przestawnej:
Ten (i drugi As) byłby lepszym przykładem rozwiązań, gdyby próbka danych była bardziej realistyczna.
źródło
A może po prostu:
źródło