Мазмұны
Егер сіз бұл блогты біраз уақыттан бері бақылап отырсаңыз, Google Sheets үшін QUERY функциясы есте болуы мүмкін. Мен мұны бірнеше жағдай үшін ықтимал шешім ретінде айттым. Бірақ бұл оның әлеуетін толық ашу үшін жеткіліксіз. Бүгін біз осы электрондық кесте суперқаһарманымен дұрыс танысатын кез келді. Сонымен қатар, назар аударарлық бір құрал да болады деп болжаңыз :)
Google Sheets QUERY функциясы электрондық кестелердегі ең қуаттысы болып есептелетінін білесіз бе? Оның ерекше синтаксисі ондаған түрлі операцияларды қолдайды. Бір рет және біржола үйрену үшін оның бөліктерін бөліп көрейік, солай ма?
Google Sheets QUERY функциясының синтаксисі
Бір қарағанда, Google Sheets QUERY 1 қосымша және 2 қажетті аргументі бар басқа функция:
=QUERY(деректер, сұрау, [тақырыптар])- деректер - өңделетін ауқым. Міндетті. Мұнда бәрі анық.
Ескертпе. Мұнда Google орнатқан бір ғана шағын еске салғыш: әрбір баған деректердің бір түрін қамтуы керек: мәтіндік, сандық немесе логикалық. Түрлері әртүрлі болса, QUERY ең көп кездесетінімен жұмыс істейді. Басқа түрлер бос ұяшықтар ретінде қарастырылады. Біртүрлі, бірақ мұны есте сақтаңыз.
- сұрау - деректерді өңдеу тәсілі. Міндетті. Барлық қызық осы жерден басталады. Google Sheets QUERY функциясы осы аргумент үшін арнайы тілді пайдаланады: Google Visualization APIкритерий
- нәтиже үшін орынды таңдау
- нәтижені QUERY формуласы ретінде немесе мәндер ретінде енгізу
Мен қалжыңдамаймын, өзіңіз көріңіз. Бұл GIF тездетілгеніне қарамастан, барлық критерийлерді дәлдеп, нәтиже алу үшін бір минуттан аз уақыт кетті:
Егер сізді қызықтыратын болса, мұнда егжей-тегжейлі қондырма қалай жұмыс істейтінін көрсететін бейне:
Қондырмаға мүмкіндік беріп, оны Google Workspace Marketplace сайтынан аласыз деп үміттенемін. Ұялмаңыз және пікіріңізбен бөлісіңіз, әсіресе сізге ұнамайтын нәрсе болса.
Сонымен қатар оның оқулық бетін немесе басты бетін қараңыз.
Сұрау тілі. Ол SQL-ге ұқсас түрде жазылған. Негізінде бұл функцияға не істеу керектігін айту үшін қолданылатын арнайы сөйлемдер (пәрмендер) жиынтығы: таңдау, топтастыру, шектеу және т.б.Ескерту. Бүкіл аргумент қос тырнақшаға алынуы керек. Мәндер өз кезегінде тырнақшаға алынуы керек.
Енді тармақтарды және олардың не істейтінін тереңірек зерттеп көрейік.
Google Sheets QUERY формулаларында қолданылатын сөйлемдер
Сұрау тілі 10 сөйлемнен тұрады. Олар бір қарағанда қорқытуы мүмкін, әсіресе SQL-пен таныс болмасаңыз. Бірақ мен олармен танысқаннан кейін сізде қуатты электрондық кесте қаруы болатынына уәде беремін.
Мен әр тармақты қарастырып, қиялдағы студенттер мен олардың қағаз тақырыптарының осы тізімін пайдаланып формула мысалдарын беремін. :
Иә, мен Плутон планета болуы керек деп ойлайтын оғаш адамдардың бірімін :)
Кеңес. Бір Google Sheets QUERY функциясында бірнеше сөйлемді пайдалануға болады. Егер сіз олардың барлығына ұя салсаңыз, осы мақалада олардың пайда болу ретін сақтаңыз.
Таңдау (барлық немесе арнайы бағандар)
Бірінші тармақ – таңдау – Google Sheets QUERY көмегімен қай бағандарды қайтару керектігін айту үшін пайдаланылады.басқа парақтан немесе кестеден.
Мысал 1. Барлық бағандарды таңдау
Әрбір бағанды алу үшін жұлдызшамен таңдау пәрменін пайдаланыңыз – *<2 таңдаңыз>
=QUERY(Papers!A1:G11,"select *")
Кеңес. таңдаулы параметрін өткізіп жіберсеңіз, Google Sheets QUERY әдепкі бойынша барлық бағандарды қайтарады:
=QUERY(Papers!A1:G11)
2-мысал. Арнайы бағандарды таңдаңыз
Тек белгілі бір бағандарды тарту үшін , оларды таңдау тармағынан кейін тізімдеңіз:
=QUERY(Papers!A1:G11, "select A,B,C")
Кеңес. Қызығушылықты білдіретін бағандар сіз оларды формулада атап өткен ретпен көшіріледі:
=QUERY(Papers!A1:G11, "select C,B,A")
Google Sheets QUERY – Қайдағы сөйлем
Google Sheets QUERY мұнда сіз алғыңыз келетін деректерге қатысты шарттарды орнату үшін пайдаланылады. Басқаша айтқанда, ол сүзгі ретінде әрекет етеді.
Осы тармақты пайдалансаңыз, Google Sheets үшін QUERY функциясы сіздің шарттарыңызға сәйкес мәндерді бағандарды іздейді және барлық сәйкестіктерді сізге қайтарады.
Кеңес. Қайда select сөйлемінсіз жұмыс істей алады.
Әдеттегідей шарттарды анықтау үшін сіз үшін арнайы операторлар жиыны бар:
- қарапайым салыстыру операторлары ( сандық мәндер үшін ): =, , >, >=, <, <=
- күрделі салыстыру операторлары ( жолдар үшін ): құрамында, басталады, аяқталады с, сәйкес келеді, != (сәйкес келмейді / тең емес), сияқты .
- логикалық операторлар бірнеше шарттарды біріктіру : және, немесе, емес.
- операторлар бос/ бос емес : нөл, бос емес .
Кеңес. Егер сіз ренжісеңіз немесе осыншама көп операторлармен қайта жұмыс істеуге тура келетініне алаңдасаңыз, біз сізді сезінеміз. Біздің бірнеше Vlookup сәйкестіктеріміз барлық сәйкестіктерді табады және қажет болса, Google Sheets ішінде QUERY формулаларын жасайды.
Бұл операторлардың формулалардағы әрекетін көрейік.
1-мысал. Қайда сандармен
Мен Google Sheets-ке қайда қосамын 10-нан астам серігі бар планеталар туралы ақпаратты алу үшін жоғарыдан СҰРАУ:
=QUERY(Papers!A1:G11,"select A,B,C,F where F>=10")
Кеңес. Шарттың орындалғанына көз жеткізу үшін алу үшін F бағанын да айттым. Бірақ бұл толығымен міндетті емес. Нәтижеге шарттары бар бағандарды қосудың қажеті жоқ:
=QUERY(Papers!A1:G11,"select A,B,C where F>=10")
2-мысал. Қайда мәтін жолдары бар
- Мен көргім келеді баға F немесе F+ болатын барлық жолдар. Ол үшін contains операторын қолданамын:
=QUERY(Papers!A1:G11,"select A,B,C,G where G contains 'F'")
Ескертпе. Мәтінді тырнақшалармен қоршауды ұмытпаңыз.
- Тек F бар барлық жолдарды алу үшін, жай ғана құрамында тең белгісімен (=) ауыстырыңыз:
=QUERY(Papers!A1:G11,"select A,B,C,G where G="F"")
- Әлі жеткізілмейтін (баға жоқ жерде) құжаттарды тексеру үшін G бағанында бос орындар бар-жоғын тексеріңіз:
=QUERY(Papers!A1:G11,"select A,B,C,G where G is null'")
Мысал 3. Қайда күндер
Ойланыңыз: Google Sheets QUERY тіпті күндерді реттей алды!
Электрондық кестелер күндерді сериялық нөмірлер ретінде сақтайтындықтан, әдетте сізге қажетDATE немесе DATEVALUE, YEAR, MONTH, TIME, т.б. сияқты арнайы функциялардың көмегіне жүгініңіз.
Бірақ QUERY күндерді айналып өтті. Оларды дұрыс енгізу үшін жай ғана күн сөзін теріңіз, содан кейін күннің өзін жжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжж пішімделген күннің өзін қосыңыз: күн '2020-01-01'
2020 жылдың 1 қаңтарына дейін Сөйлеу күні бар барлық жолдарды алу формуласы мынада:
=QUERY(Papers!A1:G11,"select A,B,C where B
4-мысал. Бірнеше шарттарды біріктіріңіз
Белгілі бір уақыт кезеңін критерий ретінде пайдалану үшін екі шартты біріктіру қажет.
Келіңіз, 2019 жылдың күзінде жеткізілген құжаттарды шығарып көрейік. Бірінші критерий күні болуы керек. немесе 2019 жылғы 1 қыркүйектен кейін , екіншісі — 2019 жылғы 30 қарашада :
=QUERY(Papers!A1:G11,"select A,B,C where B>=date '2019-09-01' and B<=date '2019-11-30'")
Немесе, I мына параметрлерге негізделген құжаттарды таңдай алады:
- 2019 жылдың 31 желтоқсанына дейін ( B
) - баға ретінде A немесе A+ бар ( G құрамында 'A' )
- немесе B/B+ ( G құрамында 'B' )
=QUERY(Papers!A1:G11,"select A,B,C,G where B
Кеңес. Егер сіздің басыңыз жарылуға жақын болса, әлі де берілмеңіз. Критерийлердің санына қарамастан, сіз үшін осы формулалардың барлығын жасауға тамаша қабілетті құрал бар. Оны білу үшін мақаланың соңына өтіңіз.
Google Sheets QUERY – Топтау бойынша
Google Sheets QUERY group by пәрмені жолдарды біріктіру үшін пайдаланылады. Дегенмен, оларды қорытындылау үшін кейбір жиынтық функцияларды пайдалану керек.
Ескерту. бойынша топтастыру әрқашан таңдау тармағын орындауы керек.
Өкінішке орай, менің кестемде топталатын ештеңе жоқ, себебі қайталанатын мәндер жоқ. Ендеше, мен оны аздап реттеуге рұқсат етіңіз.
Барлық қағаздарды тек 3 оқушы ғана дайындайды делік. Мен әр оқушының ең жоғары бағасын таба аламын. Бірақ олар әріп болғандықтан, бұл G бағанына қолдануым керек MIN функциясы:
=QUERY(Papers!A1:G11,"select A,min(G) group by A")
Ескерту. таңдау тармағындағы (менің мысалдағы A бағаны) кез келген бағанмен біріктіру функциясын пайдаланбасаңыз, олардың барлығын тобындағы<2 арқылы қайталауыңыз керек> сөйлем.
Google Sheets QUERY – Жиынтық
Google Sheets QUERY пивот тармағы керісінше жұмыс істейді, егер мен айта аламын. Ол деректерді бір бағаннан жолға жаңа бағандары бар жолға ауыстырады, сәйкесінше басқа мәндерді топтайды.
Күндермен айналысатындар үшін бұл нағыз жаңалық болуы мүмкін. Сол дереккөз бағанынан барлық белгілі жылдарға жылдам шолу жасай аласыз.
Ескертпе. пивот туралы сөз болғанда, таңдау тармағында пайдаланылатын әрбір баған жиынтық функциямен қамтылуы керек. Әйтпесе, ол топта пәрмені арқылы пивот арқылы айтылуы керек.
Есіңде болсын, менің кестем қазір тек 3 оқушыны атайды. Функция әр оқушының қанша есеп шығарғанын көрсетуге тырысамын:
=QUERY(Papers!A1:G11,"select count(G) pivot A")
Google Sheets QUERY – Тапсырыс бойынша
Бұл өте оңай :) Бұл үйреніп қалғаннәтижені белгілі бағандардағы мәндер бойынша сұрыптаңыз.
Кеңес. Барлық алдыңғы тармақтар тәртіп бойынша пайдалану кезінде міндетті емес. Мен демонстрация мақсатында азырақ бағандарды қайтару үшін таңдау қолданамын.
Бастапқы кестеме оралайық және есептерді сөйлеу күні бойынша сұрыптайық.
Бұл келесі Google Sheets QUERY формуласы маған A, B және C бағандарын береді, бірақ сонымен бірге оларды күні бойынша сұрыптайды. B бағаны:
=QUERY(Papers!A1:G11,"select A,B,C order by B")
Шектеу
Егер мен сізге айтсам, әрбір жолды енгізудің қажеті жоқ нәтиже? Егер мен сізге Google Sheets QUERY өзі тапқан алғашқы сәйкестіктердің белгілі бір бөлігін ғана шығара алатынын айтсам ше?
Ал, лимит тармағы осыған көмектесу үшін жасалған. Ол берілген сан бойынша қайтарылатын жолдар санын шектейді.
Кеңес. Басқа алдыңғы тармақтарсыз шектеу қолдануға болады.
Бұл формула бағалары бар бағанда белгі (бос емес) бар алғашқы 5 жолды көрсетеді:
=QUERY(Papers!A1:G11,"select A,B,C,G where G is not null limit 5")
Офсет
Бұл тармақ алдыңғыға қарама-қайшы. шектеу сіз көрсеткен жолдар санын алған кезде, офсет қалғандарын шығарып, оларды өткізіп жібереді.
Кеңес. Офсет басқа сөйлемдерді де қажет етпейді.
=QUERY(Papers!A1:G11,"select A,B,C,G where G is not null offset 5")
Егер лимит және оффсет екеуін де қолданып көрсеңіз, келесі әрекеттер орындалады:
- Офсет басындағы жолдарды өткізіп жібереді.
- Шектеу санды қайтарады.келесі жолдар.
=QUERY(Papers!A1:G11,"select A,B,C,G where G is not null limit 3 offset 3")
11 деректер жолының ішінде (бірінші - тақырып және Google Sheets қолданбасындағы QUERY функциясы мұны жақсы түсінеді), офсет біріншісін өткізіп жібереді 3 қатар. Лимит келесі 3 жолды қайтарады (4-ші жолдан бастап):
Google Sheets QUERY – Белгі
Google Sheets QUERY label пәрмені бағандардың тақырып атауларын өзгертуге мүмкіндік береді.
Кеңес. Басқа сөйлемдер белгі үшін де міндетті емес.
Алдымен белгіні , одан кейін баған идентификаторы мен жаңа атауды қойыңыз. Бірнеше бағанның атын өзгертсеңіз, баған белгісінің әрбір жаңа жұбын үтір арқылы бөліңіз:
=QUERY(Papers!A1:G11,"select A,B,C label A 'Name', B 'Date'")
Пішім
формат сөйлемі бағандағы барлық мәндердің пішімін өзгертуге мүмкіндік береді. Ол үшін сізге қажетті пішімнің артында тұрған үлгі қажет болады.
Кеңес. Пішім сөйлемі Google Sheets QUERY ішінде жеке ойнай алады.
=QUERY(Papers!A1:G11,"select A,B,C limit 3 format B 'mm-dd, yyyy, ddd'")
Кеңес. Мен осы блог жазбасында Google Sheets QUERY үшін кейбір күн пішімдерін айттым. Басқа пішімдерді тікелей электрондық кестелерден алуға болады: Формат > Сан > Қосымша пішімдер > Теңшелетін сан пішімі .
Параметрлер
Бұл нәтиже деректері үшін кейбір қосымша параметрлерді орнату үшін пайдаланылады.
Мысалы, мәндер жоқ сияқты пәрмен пішімделген ұяшықтарды ғана қайтарады.
QUERY формулаларын құрудың ең жылдам жолы – Бірнеше Vlookup сәйкестіктері
Google Sheets жүйесіндегі QUERY функциясы қаншалықты күшті болса да,оны меңгеру үшін оқу қисығы қажет болуы мүмкін. Кішкентай кестеде әр тармақты бөлек суреттеу бір басқа, ал бірнеше сөйлем және әлдеқайда үлкен кесте арқылы барлығын дұрыс құруға тырысу мүлдем басқа.
Сондықтан біз Google Sheets QUERY файлын келесідей етіп жасауды шештік. пайдаланушыға ыңғайлы интерфейс және оны қондырмаға айналдырыңыз.
Неліктен бірнеше VLOOKUP сәйкестіктері формулаларға қарағанда жақсы?
Ал, қондырмамен мүлдем қажет емес :
- сол тармақтар туралы кез келген нәрсені анықтаңыз . Қосымшада көптеген күрделі шарттарды жасау өте оңай: қажетінше көп сіріңкелерді алу тәртібіне қарамастан, сонша.
Ескертпе. Қазіргі уақытта құралға келесі сөйлемдер енгізілген: таңдау, мұнда, шектеу, және офсет . Тапсырмаңыз басқа тармақтарды қажет етсе, төменде пікір қалдырыңыз – бәлкім, сіз бізге жақсартуға көмектесесіз;)
- операторларды енгізу жолын білу : тек біреуін таңдаңыз. ашылмалы тізім.
- дұрыс күн мен уақытты енгізу әдісі
- жұмбақ. Қондырма оларды электрондық кесте тілінің негізінде бұрынғыдай енгізуге мүмкіндік береді.
Кеңес. Құралда әртүрлі деректер түрлерінің мысалдары бар кеңес әрқашан қолжетімді.
бонус ретінде сіз:
- алдын ала қарау екеуін де орындай аласыз. нәтиже және формула
- өзіңізге тез түзетулер жасайды