Hogyan kell használni a Google Sheets QUERY funkciót - standard záradékok és egy alternatív eszköz

  • Ossza Meg Ezt
Michael Brown

Ha már egy ideje követed ezt a blogot, talán emlékszel a Google Sheets QUERY funkciójára. Néhány esetben már említettem, mint lehetséges megoldást. De ezek messze nem elégségesek ahhoz, hogy teljes potenciálját felfedezzük. Ma itt az ideje, hogy megismerjük ezt a táblázatkezelő szuperhőst rendesen. És képzeld - egy hasonlóan figyelemre méltó eszköz is lesz :)

Tudtad, hogy a Google Sheets QUERY funkcióját a leghatalmasabbnak tartják a táblázatokban? Sajátos szintaxisa több tíz különböző műveletnek kedvez. Próbáljuk meg lebontani a részeit, hogy egyszer és mindenkorra megtanuljuk őket, jó?

    A Google Sheets QUERY funkció szintaxisa

    Első pillantásra a Google Sheets QUERY csak egy újabb függvény 1 opcionális és 2 kötelező argumentummal:

    =QUERY(data, query, [headers])
    • adatok a feldolgozandó tartomány. Kötelező. Itt minden kristálytiszta.

      Megjegyzés. Csak egy kis emlékeztető itt a Google által létrehozott: minden oszlopnak egy típusú adatot kell tartalmaznia: szöveges, vagy numerikus, vagy boolean. Ha különböző típusok vannak, a QUERY azzal fog dolgozni, amelyik a legtöbbször fordul elő. A többi típus üres cellának minősül. Furcsa, de ezt tartsd észben.

    • lekérdezés az a mód, ahogyan a adatok . Kötelező. Itt kezdődik a móka. A Google Sheets QUERY funkciója egy speciális nyelvet használ erre az argumentumra: Google Visualization API lekérdezési nyelv Alapvetően egy sor speciális záradék (parancs), amelyekkel a függvénynek megmondjuk, hogy mit csináljon: select, group by, limit stb.

      Megjegyzés: A teljes argumentumot dupla idézőjelek közé kell zárni, az értékeket pedig idézőjelek közé kell tenni.

    • fejlécek opcionális, ha meg kell jelezni a fejléc sorok számát az adatok. Hagyja ki az argumentumot (mint én alább), és a Google Sheets QUERY feltételezi, hogy a tartalom alapján a táblázat.

    Most pedig ássunk mélyebbre a záradékokba és azok működésébe.

    A Google Sheets QUERY képletekben használt záradékok

    A lekérdezési nyelv 10 záradékból áll. Ezek első pillantásra megijeszthetnek, különösen, ha nem ismered az SQL-t. De ígérem, ha egyszer megismered őket, egy hatalmas táblázatkezelői fegyver áll majd a rendelkezésedre.

    Minden egyes záradékot le fogok fedni, és a képzeletbeli diákok és papírtémáik listáját felhasználva képletpéldákat fogok adni:

    Igen, én is azok közé a fura alakok közé tartozom, akik szerint a Plútónak bolygónak kellene lennie :)

    Tipp. Egy Google Sheets QUERY függvényen belül több záradék is használható. Ha mindet beágyazza, ügyeljen arra, hogy kövesse a megjelenésük sorrendjét ebben a cikkben.

    Kijelölés (minden vagy bizonyos oszlopok)

    A legelső záradék - válassza ki a címet. - arra szolgál, hogy megmondja, milyen oszlopokat kell visszaadni a Google Sheets QUERY egy másik lap vagy táblázat.

    Példa 1. Minden oszlop kijelölése

    Minden egyes oszlop lekérdezéséhez használja a válassza ki a címet. csillaggal - select *

    =QUERY(Papírok!A1:G11, "select *")

    Tipp. Ha kihagyja a válassza ki a címet. paraméter, A Google Sheets QUERY alapértelmezés szerint minden oszlopot visszaad:

    =QUERY(Papírok!A1:G11)

    Példa 2. Egyes oszlopok kiválasztása

    Ha csak bizonyos oszlopokat szeretne kihúzni, sorolja fel őket a válassza ki a címet. záradék:

    =QUERY(Papírok!A1:G11, "select A,B,C")

    Tipp: A kívánt oszlopok abban a sorrendben lesznek másolva, ahogyan a képletben megemlíti őket:

    =QUERY(Papírok!A1:G11, "select C,B,A")

    Google Sheets QUERY - Hol záradék

    Google Sheets QUERY ahol arra szolgál, hogy feltételeket állítson be a kívánt adatokhoz. Más szóval szűrőként működik.

    Ha ezt a záradékot használja, QUERY funkció a Google Sheets keresni fogja oszlopok értékek, amelyek megfelelnek a feltételeknek, és hozza vissza az összes találatot az Ön számára.

    Tipp. Hol működhet a válassza ki a címet. záradék.

    Mint általában, a feltételek meghatározásához vannak speciális üzemeltetők az Ön számára:

    • egyszerű összehasonlító operátorok ( numerikus értékek esetén ): =, ,>,>=, <, <=
    • összetett összehasonlító operátorok ( a stringek esetében ): tartalmazza, kezdődik, végződik, megegyezik, != (nem egyezik / nem egyenlő), mint .
    • logikai operátorok a több feltétel kombinálása : és, vagy, nem .
    • operátorok a üres / nem üres : null, nem null .

    Tipp: Ha ideges vagy aggódik amiatt, hogy ismét ilyen nagyszámú operátorral kell foglalkoznia, átérezzük Önt. A Multiple Vlookup Matches megtalálja az összes egyezést, és szükség esetén QUERY képleteket épít a Google Sheets-ben az Ön számára.

    Lássuk, hogyan viselkednek ezek az operátorok a képletekben.

    Példa 1. Hol számokkal

    Hozzáteszem ahol az én Google Sheets QUERY fentről, hogy megkapja az információt azokról a bolygókról, amelyek több mint 10 holdak:

    =QUERY(Papers!A1:G11, "select A,B,C,F where F>=10")

    Tipp. Említettem az F oszlopot is, amelyet csak azért kell lekérdezni, hogy a feltétel teljesüljön. De ez teljesen opcionális. Nem kell a feltételekkel rendelkező oszlopokat az eredménybe bevonni:

    =QUERY(Papírok!A1:G11, "select A,B,C where F>=10")

    2. példa. Hol szöveges karakterláncokkal

    • Szeretném látni az összes olyan sort, ahol a besorolási fokozat vagy F vagy F+ . használni fogom a a címen található. operátorral:

      =QUERY(Papírok!A1:G11, "select A,B,C,G where G contains 'F'")

      Megjegyzés: Ne felejtse el idézőjelekkel körülvenni a szöveget.

    • Az összes olyan sor kinyerése, amelynek F csak, csak cserélje ki a címen található. egy egyenlőségjel (=):

      =QUERY(Papírok!A1:G11, "select A,B,C,G where G="F""))

    • A még le nem adott dolgozatok ellenőrzéséhez (ahol hiányzik az osztályzat), ellenőrizze az alábbi oszlopot G üres helyekre:

      =QUERY(Papers!A1:G11, "select A,B,C,G where G is null'")

    3. példa. Hol dátumokkal

    Képzeld el: Google Sheets QUERY még sikerült megszelídíteni dátumokat!

    Mivel a táblázatkezelők a dátumokat sorszámként tárolják, általában olyan speciális függvények segítségét kell igénybe vennie, mint a DATE vagy DATEVALUE, YEAR, MONTH, TIME stb.

    De a QUERY megtalálta az utat a dátumok körül. A megfelelő megadásukhoz egyszerűen írja be a szót dátum majd hozzáadja magát a dátumot yyyy-mm-dd formátumban: dátum '2020-01-01'

    Itt van az én képletem, hogy megkapjam az összes olyan sort, amelynek a Beszéd dátuma 2020. január 1. előtti:

    =QUERY(Papírok!A1:G11, "select A,B,C where B

    Példa 4. Több feltétel kombinálása

    Ahhoz, hogy egy bizonyos időtartamot kritériumként használjon, két feltételt kell kombinálnia.

    Próbáljuk meg előkeresni azokat a dolgozatokat, amelyeket 2019 őszén adtak le. Az első kritériumnak egy dátumnak kell lennie. 2019. szeptember 1-jén vagy azt követően , a második - legkésőbb 2019. november 30-án :

    =QUERY(Papers!A1:G11, "select A,B,C where B>=dátum '2019-09-01' and B<=dátum '2019-11-30'")

    Vagy pedig ezen paraméterek alapján válogathatom ki a papírokat:

    • 2019. december 31. előtt ( B )
    • A vagy A+ osztályzatot kapnak ( G tartalmaz 'A'-t )
    • vagy B/B+ ( G tartalmaz 'B'-t )

    =QUERY(Papers!A1:G11, "select A,B,C,G where B

    Tipp: Ha már majdnem szétrobban a fejed, még ne add fel. Van egy eszköz, ami tökéletesen képes mindezeket a képleteket elkészíteni helyetted, függetlenül a kritériumok számától. Ugorj a cikk végére, hogy megismerd.

    Google Sheets QUERY - Csoportosítás

    Google Sheets QUERY csoportosítsuk a parancsot használjuk a sorok összekapcsolására. Összegzésükhöz azonban néhány aggregáló függvényt kell használnunk.

    Megjegyzés. Csoportosítás mindig követnie kell a válassza ki a címet. záradék.

    Sajnos az én táblázatomban nincs mit csoportosítani, mivel nincsenek ismétlődő értékek. Hadd állítsam be egy kicsit.

    Tegyük fel, hogy az összes dolgozatot csak 3 diák készíti el. Meg tudom találni az egyes diákok legmagasabb osztályzatát. De mivel ezek betűk, a MIN függvényt kell alkalmaznom a G oszlopra:

    =QUERY(Papers!A1:G11, "select A,min(G) group by A")

    Megjegyzés: Ha nem használ aggregáló függvényt a táblázat bármelyik oszlopával a válassza ki a címet. záradék (oszlop A az én példámban), akkor meg kell duplikálnia mindet a csoportosítsuk a záradék.

    Google Sheets QUERY - Pivot

    Google Sheets QUERY pivot záradék fordítva működik, ha szabad így mondanom. Az adatokat egy oszlopból egy új oszlopokkal ellátott sorba helyezi át, és a többi értéket ennek megfelelően csoportosítja.

    Aki a dátumokkal foglalkozik, annak ez igazi felfedezés lehet. Ebből a forrásoszlopból gyors pillantást vethet az összes különböző évre.

    Megjegyzés: Amikor a pivot , minden oszlop, amelyet a válassza ki a címet. záradékot egy aggregált függvénnyel kell lefedni. Ellenkező esetben a csoportosítsuk a parancsot a pivot .

    Ne feledje, hogy a táblázatom most csak 3 diákot említ. A függvényt arra fogom használni, hogy megmondja, hogy az egyes diákok hány jelentést készítettek:

    =QUERY(Papírok!A1:G11, "select count(G) pivot A")

    Google Sheets QUERY - Rendezés

    Ez elég egyszerű :) Arra szolgál, hogy az eredményt bizonyos oszlopok értékei szerint rendezzük.

    Tipp: Az összes előző záradék opcionális, ha a rendelés szerint . használom válassza ki a címet. hogy demonstrációs céllal kevesebb oszlopot adjon vissza.

    Térjünk vissza az eredeti táblázatomhoz, és rendezzük a jelentéseket beszéddátum szerint.

    Ez a következő Google Sheets QUERY formula kap nekem oszlopok A, B és C, de ugyanakkor rendezi őket dátum szerint a B oszlopban:

    =QUERY(Papírok!A1:G11, "select A,B,C order by B")

    Limit

    Mi lenne, ha azt mondanám, hogy nem kell minden egyes sort bevinni az eredménybe? Mi lenne, ha azt mondanám, hogy a Google Sheets QUERY csak egy bizonyos mennyiséget tud kihúzni az első találatokból, amit talál?

    Nos, a limit záradék célja, hogy segítsen ebben, mivel a visszaadandó sorok számát a megadott számmal korlátozza.

    Tipp. Használja bátran a limit más korábbi záradékok nélkül.

    Ez a képlet az első 5 olyan sort fogja megjeleníteni, ahol az osztályzatokat tartalmazó oszlop tartalmaz egy jelet (nem üres):

    =QUERY(Papers!A1:G11, "select A,B,C,G where G is not null limit 5")

    Offset

    Ez a záradék ellentétes az előzővel. Míg a limit a megadott sorok számát kapja meg, offset kihagyja őket, és visszaszerzi a többit.

    Tipp. Offset szintén nem igényel semmilyen más záradékot.

    =QUERY(Papers!A1:G11, "select A,B,C,G where G is not null offset 5")

    Ha megpróbálja használni mindkettőt limit és offset a következő fog történni:

    1. Offset az elején lévő sorokat kihagyja.
    2. Limit a következő sorok számát adja vissza.

    =QUERY(Papers!A1:G11, "select A,B,C,G where G is not null limit 3 offset 3")

    A 11 adatsorból (az első egy fejléc, és a Google Sheets QUERY funkciója szép munkát végez ennek megértésében), az offset kihagyja az első 3 sort. A limit 3 következő sort ad vissza (a 4. sorral kezdődően):

    Google Sheets QUERY - Címke

    Google Sheets QUERY címke parancs segítségével megváltoztathatja az oszlopok fejlécének nevét.

    Tipp. A többi záradék nem kötelező a címke is.

    Tegye a címke először az oszlop azonosítóját, majd az új nevet. Ha több oszlopot nevez át, az új oszlopcímke-párokat vesszővel válassza el egymástól:

    =QUERY(Papírok!A1:G11, "select A,B,C label A 'Név', B 'Dátum'")

    Formátum

    A formátum záradék lehetővé teszi egy oszlop összes értékének formátumának megváltoztatását. Ehhez szükség van egy, a kívánt formátum mögött álló mintára.

    Tipp. A formátum záradék is játszhat szólót a Google Sheets QUERY.

    =QUERY(Papers!A1:G11, "select A,B,C limit 3 format B 'mm-dd, yyyy, ddd'")

    Tipp. Ebben a blogbejegyzésben említettem néhány dátumformátumot a Google Sheets QUERY számára. Más formátumok közvetlenül a táblázatokból vehetők: Formátum> Szám> További formátumok> Egyéni számformátum .

    Opciók

    Ez az eredményadatok néhány további beállításának megadására szolgál.

    Például az olyan parancsok, mint no_values csak a formázott cellákat adja vissza.

    A leggyorsabb módja annak, hogy építeni QUERY képletek - Több Vlookup Matches

    Bármilyen erős is a Google Sheets QUERY funkciója, a megismerése igényelhet némi tanulási folyamatot. Egy dolog az egyes záradékokat külön-külön illusztrálni egy kis táblán, és teljesen más dolog megpróbálni mindent helyesen felépíteni néhány záradékkal és egy sokkal nagyobb táblával.

    Ezért úgy döntöttünk, hogy a Google Sheets QUERY-t felhasználóbarát felületre öltöztetjük, és a kiegészítőt kiegészítjük.

    Miért jobb a többszörös VLOOKUP egyezések, mint a képletek?

    Nos, a kiegészítéssel van egyáltalán nem szükséges :

    • kitalálni bármit is azokról a záradékok A kiegészítőben nagyon könnyen létrehozhatsz sok összetett feltételt: annyit, amennyire szükséged van, annak ellenére, hogy a sorrendjükkel annyi mérkőzést tudsz lekérni, amennyire szükséged van.

      Megjegyzés: Jelenleg a következő záradékok kerültek be az eszközbe: select, where, limit, és offset Ha az Ön feladata más záradékokat is igényel, kérjük, írja meg az alábbiakban - talán segít nekünk javítani ;)

    • tudja, hogyan kell adja meg a kezelőket : csak válassza ki az egyiket a legördülő listából.
    • fejtörést okozni a megfelelő a dátum és az idő megadásának módja A bővítmény lehetővé teszi, hogy a táblázatkezelő helyi beállításai alapján úgy adja meg őket, ahogyan szokta.

      Tipp: Az eszközben mindig van egy súgó, amely példákat tartalmaz a különböző adattípusokra.

    Mint egy bónusz , akkor képes leszel:

    • előnézet mind a eredmény és a képlet
    • készítsd el a gyors módosítások az Ön kritériumaihoz
    • válasszon egy az eredmény helye
    • beillesztése az eredmény mindkettő QUERY formula vagy mint értékek

    Nem viccelek, nézd meg magad. Bár ez a GIF fel lett gyorsítva, kevesebb, mint egy percbe telt, hogy finomhangoljam az összes kritériumot, és megkapjam az eredményt:

    Ha elég kíváncsi vagy, itt egy részletes videó, amely bemutatja a bővítmény működését:

    Remélem, adsz egy esélyt a kiegészítőnek, és beszerzed a Google Workspace Marketplace-ről. Ne légy szégyenlős, és oszd meg velünk a visszajelzéseidet, különösen, ha van valami, ami nem tetszik.

    Továbbá bátran nézze meg a bemutató oldalát vagy a honlapját.

    Michael Brown elkötelezett technológiai rajongó, aki szenvedélyesen egyszerűsíti a bonyolult folyamatokat szoftvereszközök segítségével. A technológiai iparban szerzett több mint egy évtizedes tapasztalatával a Microsoft Excel és az Outlook, valamint a Google Táblázatok és a Dokumentumok területén fejlesztette tudását. Michael blogja célja, hogy megossza tudását és szakértelmét másokkal, könnyen követhető tippeket és oktatóanyagokat adva a termelékenység és a hatékonyság javításához. Akár tapasztalt szakember, akár kezdő, Michael blogja értékes betekintést és gyakorlati tanácsokat kínál, amelyek segítségével a legtöbbet hozhatja ki ezekből az alapvető szoftvereszközökből.