Hvernig á að nota Google Sheets QUERY aðgerð – staðalsetningar og annað tól

  • Deildu Þessu
Michael Brown

Ef þú hefur fylgst með þessu bloggi í nokkurn tíma gætirðu munað eftir QUERY aðgerðinni fyrir Google Sheets. Ég nefndi það sem hugsanlega lausn í nokkrum málum. En það er langt frá því að vera nóg til að afhjúpa alla möguleika þess. Í dag er kominn tími til að við kynnumst þessari töflureikni ofurhetju almennilega. Og gettu hvað – eitt jafn athyglisvert tól verður líka :)

Vissir þú að Google Sheets QUERY aðgerðin er talin vera öflugasta aðgerðin í töflureiknum? Sérkennileg setningafræði þess styður tugi mismunandi aðgerða. Við skulum reyna að brjóta niður hluta þess til að læra þá í eitt skipti fyrir öll, eigum við það?

    Setjafræði Google Sheets QUERY virka

    Við fyrstu sýn er Google Sheets QUERY bara önnur aðgerð með 1 valfrjálsum og 2 nauðsynlegum rökum:

    =QUERY(gögn, fyrirspurn, [hausar])
    • gögn er sviðið sem á að vinna úr. Áskilið. Hér er allt kristaltært.

      Athugið. Aðeins ein lítil áminning hér sem Google hefur sett: hver dálkur ætti að innihalda eina tegund gagna: texta, töluleg eða boolean. Ef það eru mismunandi gerðir mun QUERY vinna með þeirri sem kemur mest fyrir. Aðrar gerðir verða taldar tómar hólf. Skrítið, en hafðu það í huga.

    • fyrirspurn er leiðin til að vinna úr gögnunum . Áskilið. Hér byrjar allt fjörið. Google Sheets QUERY virka notar sérstakt tungumál fyrir þessa röksemdafærslu: Google Visualization APIskilyrði
    • veljið stað fyrir niðurstöðuna
    • settu inn niðurstöðuna sem bæði QUERY formúlu eða sem gildi

    Ég er ekki að grínast, sjáið sjálfur. Þó að þetta GIF hafi verið hraðað tók það mig innan við mínútu að fínstilla öll viðmið og fá niðurstöðuna:

    Ef þú ert nógu forvitinn, þá er hér ítarlegt myndband sem sýnir hvernig viðbótin virkar:

    Ég vona að þú gefir viðbótinni tækifæri og færð hana frá Google Workspace Marketplace. Ekki vera feimin og deildu athugasemdum þínum, sérstaklega ef það er eitthvað við það sem þér líkar ekki við.

    Einnig skaltu ekki hika við að kíkja á kennslusíðuna eða heimasíðuna hennar.

    Fyrirspurnartungumál. Það er skrifað á svipaðan hátt og SQL. Í grundvallaratriðum er þetta sett af sérstökum setningum (skipunum) sem notuð eru til að segja aðgerðinni hvað hún á að gera: velja, flokka eftir, takmarka osfrv.

    Athugið. Öll rökin verða að vera sett innan tveggja gæsalappa. Gildi ættu aftur á móti að vera vafin inn í gæsalappir.

  • hausar er valfrjálst þegar þú þarft að tilgreina fjölda hauslína í gögnunum þínum. Slepptu rökunum (eins og ég geri hér að neðan) og Google Sheets QUERY mun gera ráð fyrir því út frá innihaldi töflunnar þinnar.
  • Nú skulum við kafa dýpra í ákvæðin og hvað sem þeir gera.

    Klausur notaðar í Google Sheets QUERY formúlum

    Tungumál fyrirspurna samanstendur af 10 ákvæðum. Þeir kunna að hræða við fyrstu sýn, sérstaklega ef þú ert ekki kunnugur SQL. En ég lofa, þegar þú hefur kynnst þeim muntu fá öflugt töflureiknisvopn til umráða.

    Ég ætla að fara yfir hverja klausu og gefa formúludæmi með þessum lista yfir ímyndaða nemendur og pappírsgreinar þeirra. :

    Já, ég er einn af þessum furðufuglum sem halda að Plútó eigi að vera pláneta :)

    Ábending. Hægt er að nota nokkrar setningar innan einnar Google Sheets QUERY aðgerð. Ef þú hreiður þá alla, vertu viss um að fylgja röð útlits þeirra í þessari grein.

    Velja (allir eða sérstakir dálkar)

    Fyrsta ákvæðið – velja – er notað til að segja hvaða dálkum þú þarft að skila með Google Sheets QUERYúr öðru blaði eða töflu.

    Dæmi 1. Veldu alla dálka

    Til að sækja hvern og einn dálk skaltu nota velja með stjörnu – velja *

    =QUERY(Papers!A1:G11,"select *")

    Ábending. Ef þú sleppir veldu færibreytunni mun Google Sheets QUERY skila öllum dálkum sjálfgefið:

    =QUERY(Papers!A1:G11)

    Dæmi 2. Veldu sérstaka dálka

    Til að draga aðeins tiltekna dálka , skráðu þau á eftir velja ákvæðinu:

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

    Ábending. Áhugadálkarnir verða afritaðir í sömu röð og þú nefnir þá í formúlunni:

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

    Google Sheets QUERY – Where clause

    Google Blað QUERY þar sem er notað til að stilla skilyrðin fyrir gögnunum sem þú vilt fá. Með öðrum orðum, það virkar sem sía.

    Ef þú notar þessa klausu mun QUERY virka fyrir Google Sheets leita í dálkum að gildum sem uppfylla skilyrði þín og sækja allar samsvörun til þín.

    Ábending. Hvar getur virkað án velja ákvæðisins.

    Eins og venjulega, til að tilgreina skilyrði, eru sett af sérstökum rekstraraðilum fyrir þig:

    • einfaldir samanburðaraðgerðir ( fyrir tölugildi ): =, , >, >=, <, <=
    • flóknir samanburðaraðgerðir ( fyrir strengi ): inniheldur, byrjar á, endar með, samsvarar, != (passar ekki við / samsvarar ekki), eins og .
    • rökrænir rekstraraðilar til að sameina saman nokkur skilyrði : og, eða, ekki .
    • rekstraraðilar fyrir eyða/ ekki tómt : er núll, er ekki núll .

    Ábending. Ef þú ert í uppnámi eða áhyggjur af því að þurfa að takast á við svo mikinn fjölda rekstraraðila aftur, þá finnum við fyrir þér. Margar Vlookup samsvörun okkar munu finna allar samsvörun og búa til QUERY formúlur í Google Sheets fyrir þig ef þörf krefur.

    Við skulum sjá hvernig þessir rekstraraðilar haga sér í formúlum.

    Dæmi 1. Hvar með tölustöfum

    Ég mun bæta hvar við Google töflurnar mínar SPURÐU að ofan til að fá upplýsingar um þær plánetur sem hafa fleiri en 10 tungl:

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

    Ábending. Ég nefndi líka dálk F til að sækja bara til að tryggja að viðmiðunin sé uppfyllt. En það er algjörlega valfrjálst. Þú þarft ekki að setja dálka með skilyrðum inn í niðurstöðuna:

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

    Dæmi 2. Hvar með textastrengi

    • Ég vil sjá allar línur þar sem einkunnin er annað hvort F eða F+ . Ég mun nota inniheldur stjórnanda fyrir það:

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

      Athugið. Ekki gleyma að umkringja textann þinn með gæsalöppum.

    • Til að fá allar línur eingöngu með F skaltu bara skipta út inniheldur fyrir jöfnunarmerki (=):

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

    • Til að athuga blöðin sem á eftir að skila (þar sem einkunn vantar), athugaðu dálk G fyrir eyður:

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

    Dæmi 3. Hvar með dagsetningum

    Giska á hvað: Google Sheets QUERY hefur meira að segja tekist að temja dagsetningar!

    Þar sem töflureiknar geyma dagsetningar sem raðnúmer, þarftu venjulega aðgrípa til hjálpar sérstakra aðgerða eins og DAGSETNING eða DAGSETNINGU, ÁR, MÁNUÐUR, TÍMA o.s.frv.

    En QUERY hefur fundið leið sína í kringum dagsetningar. Til að slá þær inn á réttan hátt, sláðu einfaldlega inn orðið dagsetning og bættu svo við dagsetningunni sjálfri sem er yyyy-mm-dd: date '2020-01-01'

    Hér er formúlan mín til að fá allar línur með ræðudagsetningu fyrir 1. janúar 2020:

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

    Dæmi 4. Sameina nokkur skilyrði

    Til að nota ákveðinn tíma sem viðmiðun þarftu að sameina tvö skilyrði.

    Við skulum reyna að sækja þau blöð sem voru afhent haustið 2019. Fyrstu viðmiðin ættu að vera dagsetning á eða eftir 1. september 2019 , annað — á eða fyrir 30. nóvember 2019 :

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

    Eða, ég getur valið ritgerðir út frá þessum breytum:

    • fyrir 31. desember 2019 ( B )
    • hafa annað hvort A eða A+ sem einkunn ( G inniheldur 'A' )
    • eða B/B+ ( G inniheldur 'B' )

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

    Ábending. Ef höfuðið á þér er nú þegar að springa skaltu ekki gefast upp strax. Það er til tól sem er fullkomlega fær um að búa til allar þessar formúlur fyrir þig, sama hversu mörg viðmið eru. Farðu beint í lok greinarinnar til að kynnast henni.

    Google Sheets QUERY – Group eftir

    Google Sheets QUERY group by skipunin er notuð til að sameina línur. Hins vegar ættir þú að nota nokkrar samanlagðar aðgerðir til að draga þær saman.

    Athugið. Hópa eftir verður alltaf að fylgja velja ákvæðinu.

    Því miður er ekkert að flokka í töfluna mína þar sem það eru engin endurtekin gildi. Svo leyfðu mér að laga það aðeins.

    Segjum sem svo að öll blöðin séu eingöngu unnin af 3 nemendum. Ég get fundið hæstu einkunn sem hver nemandi fékk. En þar sem þetta eru stafir þá er það MIN fallið sem ég ætti að nota á dálk G:

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

    Athugið. Ef þú notar ekki samansafnað fall með neinum dálki í velja klausunni (dálkur A í mínu dæmi), verður þú að afrita þá alla í hópnum með ákvæði.

    Google Sheets QUERY – Pivot

    Google Sheets QUERY pivot ákvæði virkar á hinn veginn, ef ég má orða það þannig. Það flytur gögn úr einum dálki í röð með nýjum dálkum og flokkar önnur gildi í samræmi við það.

    Fyrir ykkur sem fást við dagsetningar getur það verið raunveruleg uppgötvun. Þú munt geta horft fljótt á öll hin aðskildu ár frá þessum upprunadálki.

    Athugið. Þegar það kemur að pivot , ætti hver dálkur sem notaður er í select setningunni að vera þakinn uppsafnaðarfalli. Annars ætti að nefna það í hópnum með skipun á eftir pivot þínum.

    Mundu að í töflunni minni eru nú aðeins 3 nemendur. Ég ætla að láta fallið segja mér hversu margar skýrslur hver nemandi gerði:

    =QUERY(Papers!A1:G11,"select count(G) pivot A")

    Google Sheets QUERY – Panta eftir

    Þessi er frekar auðveld :) Hann er vanurflokkaðu niðurstöðuna eftir gildunum í ákveðnum dálkum.

    Ábending. Allar fyrri setningar eru valfrjálsar þegar röðun eftir er notuð. Ég nota velja til að skila færri dálkum fyrir sýnikennslu.

    Við skulum fara aftur í upphaflegu töfluna mína og raða skýrslum eftir ræðudagsetningu.

    Þessi næsta Google Sheets QUERY formúla mun fá mér dálka A, B og C, en á sama tíma raða þeim eftir dagsetningu í dálkur B:

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

    Takmark

    Hvað ef ég segði þér, þú þarft ekki að koma með hverja og eina röð inn í niðurstaðan? Hvað ef ég segði þér að Google Sheets QUERY getur aðeins dregið tiltekið magn af fyrstu samsvörunum sem hún finnur?

    Jæja, takmarka ákvæðið er hannað til að hjálpa þér með það. Það takmarkar fjölda lína sem á að skila með uppgefnu númeri.

    Ábending. Ekki hika við að nota takmark án annarra fyrri ákvæða.

    Þessi formúla mun sýna fyrstu 5 línurnar þar sem dálkurinn með einkunnum inniheldur merki (er ekki tóm):

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

    Offset

    Þessi klausa er nokkuð andstæð þeirri fyrri. Á meðan takmark gefur þér fjölda lína sem þú tilgreinir, sleppir offset þeim og sækir afganginn.

    Ábending. Offset krefst heldur ekki neinna annarra ákvæða.

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

    Ef þú reynir að nota bæði limit og offset mun eftirfarandi gerast:

    1. Offset mun sleppa línum í upphafi.
    2. Limit mun skila fjölda afeftirfarandi línur.

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

    Af 11 línum af gögnum (sú fyrsta er haus og QUERY aðgerð í Google Sheets gerir gott starf með því að skilja það), offset sleppir þeirri fyrstu 3 raðir. Limit skilar 3 næstu línum (frá 4.):

    Google Sheets QUERY – Label

    Google Sheets QUERY label skipun gerir þér kleift að breyta heitum hausa á dálkunum.

    Ábending. Aðrar setningar eru einnig valfrjálsar fyrir merki .

    Settu merkið fyrst og síðan dálkkennið og nýtt nafn. Ef þú endurnefnir nokkra dálka skaltu aðgreina hvert nýtt par af dálkamerki með kommu:

    =QUERY(Papers!A1:G11,"select A,B,C label A 'Name', B 'Date'")

    Format

    The snið ákvæði gerir það mögulegt að breyta sniði allra gilda í dálki. Til þess þarftu mynstur sem stendur fyrir aftan æskilegt snið.

    Ábending. Sniðsákvæðið getur einnig spilað einleik í Google Sheets QUERY.

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

    Ábending. Ég nefndi nokkur dagsetningarsnið fyrir Google Sheets QUERY í þessari bloggfærslu. Önnur snið er hægt að taka beint úr töflureiknum: Format > Númer > Fleiri snið > Sérsniðið númerasnið .

    Valkostir

    Þessi er notaður til að stilla nokkrar viðbótarstillingar fyrir niðurstöðugögnin.

    Til dæmis mun skipun eins og engin_gildi skila aðeins sniðnum frumum.

    Fljótlegasta leiðin til að búa til QUERY formúlur – Margfeldi Vlookup Matches

    Hversu öflug QUERY aðgerðin í Google Sheets er,það gæti þurft námsferil til að ná tökum á. Það er eitt að myndskreyta hverja klausu fyrir sig á litlu borði og allt annað að reyna að byggja allt rétt með nokkrum setningum og miklu stærri töflu.

    Þess vegna ákváðum við að klæða Google Sheets QUERY upp í notendavænt viðmót og gerðu það að viðbótinni.

    Hvers vegna Multiple VLOOKUP Matches er betri en formúlur?

    Jæja, með viðbótinni er algerlega óþarfi að :

    • finna út eitthvað um þessi ákvæði . Það er mjög auðvelt að búa til margar flóknar aðstæður í viðbótinni: eins margar og þú þarft þrátt fyrir pöntun þeirra til að sækja eins margar samsvörun og þú þarft.

      Athugið. Í augnablikinu voru eftirfarandi ákvæði felld inn í tólið: velja, hvar, takmörk, og jöfnun . Ef verkefni þitt krefst annarra ákvæða líka, vinsamlegast skrifaðu athugasemd hér að neðan - kannski hjálpar þú okkur að bæta okkur ;)

    • vita hvernig á að slá inn rekstraraðila : veldu bara þann úr a fellilistanum.
    • púsla yfir rétta leið til að slá inn dagsetningu og tíma . Viðbótin gerir þér kleift að slá þær inn eins og þú varst vanur, byggt á töflureikninum þínum.

      Ábending. Það er alltaf vísbending tiltæk í tólinu með dæmum um mismunandi gagnagerðir.

    Sem bónus muntu geta:

    • forskoðað bæði niðurstaðan og formúlan
    • gera fljótlegar breytingar á

    Michael Brown er hollur tækniáhugamaður með ástríðu fyrir því að einfalda flókna ferla með hugbúnaðarverkfærum. Með meira en áratug af reynslu í tækniiðnaðinum hefur hann aukið færni sína í Microsoft Excel og Outlook, sem og Google Sheets og Docs. Blogg Michael er tileinkað því að deila þekkingu sinni og sérfræðiþekkingu með öðrum, veita auðveld ráð og leiðbeiningar til að bæta framleiðni og skilvirkni. Hvort sem þú ert vanur fagmaður eða byrjandi, þá býður blogg Michaels upp á dýrmæta innsýn og hagnýt ráð til að fá sem mest út úr þessum nauðsynlegu hugbúnaðarverkfærum.