Google QUERY üzerinden DISTINCT / UNIQUE metin listesine nasıl dönülür?


12

Kategoriler ve alt kategoriler listesi göz önüne alındığında:

CatA    SubCatA
CatA    SubCatA
CatB    SubCatB
CatB    SubCatB
CatC    SubCatC
CatC    SubCatC

Tüm benzersiz ana kategorileri ikincil kategoriye göre döndürmek istiyorum.

Kullanmak istemiyorum:

=QUERY(A1:B6,"SELECT A WHERE B = 'SubCatA'")

listeyi yinelemelerle döndürdüğü için (ilk öğeyi döndürmek de yardımcı olmaz).

Ne deniyorum:

=QUERY(A1:B6,"SELECT A WHERE B = 'SubCatA' GROUP BY A")

ama bana hata veriyor:, CANNOT_GROUP_WITHOUT_AGGbu nedenle ya DISTINCT(A)ya eşdeğer bir şey bulmaya çalışıyorum UNIQUE(A), ama bu işlevler mevcut değil.

Google Görselleştirme API'sı Sorgu Dili'nde benzersiz değerler listesini döndürmek için DISTINCT / UNIQUE ile eşdeğer herhangi bir işlev var mı?

Yanıtlar:


16

Sorgu olmadan:

=unique(filter(A1:A6, B1:B6="SubCatA"))

En basit çözüm.
Omiod

8

QUERYFormül içine aşağıdaki gibi bir yardımcı sütun eklemeniz gerekir :

=QUERY(
   {A1:B6, A1:A6},
   "SELECT Col1, COUNT(Col3) WHERE Col2 = 'SubCatA' GROUP BY Col1 LABEL COUNT(Col3) ''"
 )

Başka bir QUERYformül eklemek yardımcı sütunun kaldırılmasına yardımcı olur:

=QUERY(
   QUERY(
     {A1:B6, A1:A6},
     "SELECT Col1, COUNT(Col3) WHERE Col2 = 'SubCatA' GROUP BY Col1"
   ), 
   "SELECT Col1"
 )

8

Önerildiği gibi FİLTRE etrafında sürekli kullanışlı EŞSİZ işlevini kullanmaya ek olarak user79865, orijinal QUERY işlevinin etrafında UNIQUE kullanabilirsiniz (FİLTRE yeterli olmadığında QUERY'nin seçeneklerini ve esnekliğini korumak için diğer senaryolarda daha uygulanabilir ve yararlı olabilir ).

Şöyle ki: =UNIQUE(QUERY(A1:B6,"SELECT A WHERE B = 'SubCatA'"))


4

Yardımcı / sarıcı işlevi olmayan çözüm:

=QUERY(A1:B6,"SELECT MAX(A) WHERE B = 'SubCatA' GROUP BY A LABEL MAX(A) ''")

2

Unique(range)İşlevi kullanın .

Misal:

=unique(query(Sheet2!A3:F2372,"SELECT C WHERE A contains '" &E1& "' AND B CONTAINS '" &E2& "'  ",-1))

Bu, bir sütun alımı üzerinde çalışacaktır. Bu tekniği görevinizi daha fazla keşfetmek için kullanabilirsiniz. Bu daha kolay. A, B, C, Sayfa2'deki sütunlardır, E1, E2 ise & ile çevrelenen geçerli çalışma sayfasındandır.


0

OP özellikle Google QUERY aracılığıyla soruyor , ancak başka bir A'nın QUERY ve IMO'ya daha iyi bir çözüm gerektirmediği (daha kapsamlı ve çok yönlü olduğu için) bir pivot tablo uygulamak olacaktır:

WA82879 örneği

Veri örneği daha gerçekçi olsaydı, bu (ve diğer As) çözümlerin daha iyi gösterimi olurdu.


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.