جدول المحتويات
إذا كنت تتابع هذه المدونة منذ فترة ، فقد تتذكر وظيفة QUERY لجداول بيانات Google. لقد ذكرت ذلك كحل ممكن لحالتين. لكن هذه ليست كافية على الإطلاق للكشف عن إمكاناتها الكاملة. اليوم ، حان الوقت للتعرف على جداول البيانات هذه بشكل صحيح. وخمن ماذا - ستكون هناك أداة جديرة بالملاحظة أيضًا :)
هل تعلم أن وظيفة الاستعلام في جداول بيانات Google تعتبر أقوى وظيفة في جداول البيانات؟ يفضل تركيبها الغريب عشرات العمليات المختلفة. دعنا نحاول تقسيم أجزائه لتعلمها مرة واحدة وإلى الأبد ، فهل نحن؟
بناء جملة وظيفة QUERY لأوراق Google
للوهلة الأولى ، يكون QUERY أوراق Google هو مجرد وظيفة أخرى مع وسيطتين اختياريتين ووسيطتين مطلوبتين:
= QUERY (بيانات ، استعلام ، [رؤوس])- بيانات هي النطاق المطلوب معالجته. مطلوب. كل شيء واضح وضوح الشمس هنا.
ملاحظة. تذكير صغير واحد فقط وضعته Google هنا: يجب أن يحتوي كل عمود على نوع واحد من البيانات: نصية أو رقمية أو منطقية. إذا كانت هناك أنواع مختلفة ، فسيعمل QUERY مع النوع الأكثر حدوثًا. سيتم اعتبار الأنواع الأخرى كخلايا فارغة. غريب ، لكن ضع ذلك في الاعتبار.
- الاستعلام هو طريقة معالجة بيانات . مطلوب. هذا هو المكان الذي تبدأ فيه كل المتعة. تستخدم وظيفة QUERY في جداول بيانات Google لغة خاصة لهذه الوسيطة: Google Visualization APIالمعايير
- حدد مكانًا للنتيجة
- أدخل النتيجة كصيغة QUERY أو كقيم
أنا لا أمزح ، انظر بنفسك. على الرغم من تسريع ملف GIF هذا ، فقد استغرق الأمر أقل من دقيقة لضبط جميع المعايير والحصول على النتيجة:
إذا كنت مهتمًا بما يكفي ، فإليك شرحًا تفصيليًا فيديو يوضح كيفية عمل الوظيفة الإضافية:
آمل أن تمنح الفرصة للإضافة وتحصل عليها من Google Workspace Marketplace. لا تخجل وشارك ملاحظاتك ، خاصة إذا كان هناك شيء لا تحبه.
أيضًا ، لا تتردد في مراجعة صفحة البرنامج التعليمي أو الصفحة الرئيسية.
لغة الاستعلام. لقد تمت كتابته بطريقة مشابهة لـ SQL. في الأساس ، هي عبارة عن مجموعة من الجمل الخاصة (الأوامر) تُستخدم لإخبار الوظيفة بما يجب القيام به: التحديد ، والتجميع حسب ، والحد ، وما إلى ذلك.ملاحظة. يجب وضع الوسيطة بأكملها بين علامتي اقتباس. القيم ، بدورها ، يجب أن تكون ملفوفة بعلامات اقتباس.
الآن دعنا نتعمق في الجمل وأي شيء تفعله.
الجمل المستخدمة في صيغ QUERY لجداول بيانات Google
تتكون لغة الاستعلام من 10 جمل. قد يخافون للوهلة الأولى ، خاصة إذا لم تكن معتادًا على SQL. لكن أعدك ، بمجرد التعرف عليهم ، ستحصل على سلاح جداول بيانات قوي تحت تصرفك.
سأغطي كل بند وأقدم أمثلة للصيغ باستخدام هذه القائمة من الطلاب التخيليين وموضوعاتهم الورقية :
نعم ، أنا واحد من هؤلاء الغرباء الذين يعتقدون أن بلوتو يجب أن يكون كوكبًا :)
نصيحة. يمكن استخدام عدة عبارات في إحدى وظائف QUERY في جداول بيانات Google. إذا قمت بتداخلهم جميعًا ، فتأكد من اتباع ترتيب ظهورهم في هذه المقالة.
حدد (كل الأعمدة أو أعمدة محددة)
الجملة الأولى - حدد - تُستخدم لتحديد الأعمدة التي تريد إرجاعها باستخدام جداول بيانات Google QUERYمن ورقة أو جدول آخر.
مثال 1. حدد جميع الأعمدة
لجلب كل عمود ، استخدم حدد بعلامة النجمة - حدد *
=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 - Where clause
Google استعلام جداول البيانات حيث يتم استخدام لتعيين شروط البيانات التي تريد الحصول عليها. بمعنى آخر ، يعمل كمرشح.
إذا كنت تستخدم هذا البند ، فستبحث وظيفة QUERY لجداول بيانات Google في الأعمدة عن القيم التي تلبي شروطك وتجلب جميع المطابقات إليك.
نصيحة. حيث يمكن أن يعمل بدون جملة حدد .
كالعادة ، لتحديد الشروط ، هناك مجموعات من عوامل التشغيل الخاصة من أجلك:
- عوامل المقارنة البسيطة ( للقيم الرقمية ): =،، & gt ؛، & gt؛ =، & lt ؛، & lt؛ =
- عوامل المقارنة المعقدة ( للسلاسل ): تحتوي ، تبدأ بـ ، تنتهي مع ، يطابق ،! = (لا يتطابق / لا يساوي) ، مثل .
- العوامل المنطقية لـ تجمع بين عدة شروط : و ، أو ، ليست .
- عوامل لـ فارغة/ ليس فارغًا : فارغ ، ليس فارغًا .
نصيحة. إذا كنت منزعجًا أو قلقًا بشأن الاضطرار إلى التعامل مع هذا العدد الهائل من المشغلين مرة أخرى ، فنحن نشعر بك. سوف تعثر مطابقات Vlookup المتعددة الخاصة بنا على جميع التطابقات وتنشئ صيغ QUERY في جداول بيانات Google لك إذا لزم الأمر.
دعونا نرى كيف تتصرف هذه العوامل في الصيغ.
مثال 1. أين بالأرقام
سأضيف حيث إلى جداول بيانات Google الخاصة بي QUERY من الأعلى للحصول على معلومات عن تلك الكواكب التي لديها أكثر من 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 + . سأستخدم عامل التشغيل يحتوي على لذلك:
=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 تمكن QUERY حتى من ترويض التواريخ!
نظرًا لأن جداول البيانات تخزن التواريخ كأرقام تسلسلية ، عادة ، يجب عليكاللجوء إلى مساعدة الوظائف الخاصة مثل DATE أو DATEVALUE ، YEAR ، MONTH ، TIME ، إلخ.
لكن QUERY وجد طريقه حول التواريخ. لإدخالها بشكل صحيح ، ما عليك سوى كتابة الكلمة التاريخ ثم أضف التاريخ نفسه بتنسيق yyyy-mm-dd: date '2020-01-01'
ها هي الصيغة الخاصة بي للحصول على جميع الصفوف مع تاريخ الكلام قبل 1 كانون الثاني (يناير) 2020:
=QUERY(Papers!A1:G11,"select A,B,C where B
مثال 4. ادمج عدة شروط
لاستخدام فترة زمنية معينة كمعيار ، ستحتاج إلى الجمع بين شرطين.
لنحاول استرداد تلك الأوراق التي تم تسليمها في الخريف ، 2019. يجب أن يكون المعيار الأول تاريخًا في أو بعد 1 سبتمبر 2019 ، الثانية - في أو قبل 30 نوفمبر 2019 :
=QUERY(Papers!A1:G11,"select A,B,C where B>=date '2019-09-01' and B<=date '2019-11-30'")
أو ، I يمكن تحديد الأوراق بناءً على هذه المعلمات:
- قبل 31 ديسمبر 2019 ( 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 المجموعة حسب يتم استخدام الأمر لسلسلة الصفوف. ومع ذلك ، يجب استخدام بعض الدوال التجميعية لتلخيصها.
ملاحظة. يجب أن تتبع المجموعة حسب دائمًا جملة حدد .
لسوء الحظ ، لا يوجد شيء لتجميعه في الجدول الخاص بي حيث لا توجد قيم متكررة. لذلك اسمحوا لي أن أقوم بتعديلها قليلاً.
لنفترض ، أن جميع الأوراق يجب أن يتم تحضيرها من قبل 3 طلاب فقط. يمكنني العثور على أعلى درجة حصل عليها كل طالب. ولكن نظرًا لأنها أحرف ، فهي وظيفة MIN التي يجب أن أطبقها على العمود G:
=QUERY(Papers!A1:G11,"select A,min(G) group by A")
ملاحظة. إذا كنت لا تستخدم دالة مجمعة مع أي عمود في حدد عبارة (العمود A في المثال الخاص بي) ، يجب عليك تكرارها جميعًا في المجموعة بواسطة شرط.
Google Sheets QUERY - Pivot
Google Sheets QUERY pivot جملة تعمل في الاتجاه المعاكس ، إذا جاز لي أن أقول ذلك. إنه ينقل البيانات من عمود إلى صف بأعمدة جديدة ، ويجمع القيم الأخرى وفقًا لذلك.
بالنسبة لأولئك الذين يتعاملون مع التواريخ ، يمكن أن يكون اكتشافًا حقيقيًا. ستتمكن من إلقاء نظرة سريعة على جميع السنوات المميزة من عمود المصدر هذا.
ملاحظة. عندما يتعلق الأمر بـ pivot ، يجب تغطية كل عمود مستخدم في جملة select بوظيفة تجميعية. عدا ذلك ، يجب ذكره في المجموعة عن طريق الأمر الذي يتبع المحور .
تذكر أن طاولتي تشير الآن إلى 3 طلاب فقط. سأجعل الوظيفة تخبرني بعدد التقارير التي قدمها كل طالب:
=QUERY(Papers!A1:G11,"select count(G) pivot A")
أوراق Google QUERY - ترتيب حسب
هذا سهل جدًا :) وهو معتاد علىرتب النتيجة بالقيم في أعمدة معينة.
نصيحة. جميع البنود السابقة اختيارية عند استخدام ترتيب حسب . أستخدم حدد لإرجاع عدد أقل من الأعمدة لأغراض العرض التوضيحي.
دعنا نعود إلى جدولي الأصلي ونفرز التقارير حسب تاريخ الكلام.
ستحصلني صيغة QUERY التالية في جداول بيانات Google على الأعمدة A و B و C ، ولكن في نفس الوقت سنقوم بفرزها حسب التاريخ في العمود B:
=QUERY(Papers!A1:G11,"select A,B,C order by B")
الحد
ماذا لو أخبرتك ، لست مضطرًا لإحضار كل صف إلى النتائج؟ ماذا لو أخبرتك أن Google Sheets QUERY يمكنه سحب قدر معين فقط من المطابقات الأولى التي يجدها؟
حسنًا ، تم تصميم عبارة Limit لمساعدتك في ذلك. يحد من عدد الصفوف التي يجب إرجاعها بالرقم المحدد.
نصيحة. لا تتردد في استخدام الحد بدون البنود السابقة الأخرى.
ستُظهر هذه الصيغة الصفوف الخمسة الأولى حيث يحتوي العمود الذي يحتوي على درجات على علامة (ليس فارغًا):
=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 صفًا من البيانات (أول واحد عبارة عن رأس ووظيفة QUERY في جداول بيانات Google تقوم بعمل جيد لفهم ذلك) ، يتخطى الإزاحة الأولى 3 صفوف. يُرجع الحد 3 صفوف تالية (بدءًا من الصف الرابع):
Google Sheets QUERY - Label
Google Sheets QUERY label command يتيح لك تغيير أسماء رؤوس الأعمدة.
نصيحة. البنود الأخرى اختيارية لـ التسمية أيضًا.
ضع علامة أولاً ، متبوعة بمعرف العمود واسم جديد. إذا أعدت تسمية بعض الأعمدة ، فافصل كل زوج جديد من تسمية الأعمدة بفاصلة:
=QUERY(Papers!A1:G11,"select A,B,C label A 'Name', B 'Date'")
التنسيق
تجعل عبارة> format من الممكن تغيير تنسيق جميع القيم في عمود. لذلك ، ستحتاج إلى نمط يقف خلف التنسيق المطلوب.
نصيحة. يمكن أيضًا لعب بند التنسيق منفردًا في QUERY على جداول بيانات Google.
=QUERY(Papers!A1:G11,"select A,B,C limit 3 format B 'mm-dd, yyyy, ddd'")
نصيحة. لقد ذكرت بعض تنسيقات التاريخ لجداول بيانات Google QUERY في منشور المدونة هذا. يمكن الحصول على تنسيقات أخرى مباشرة من جداول البيانات: Format & gt؛ عدد و GT. المزيد من التنسيقات & GT. تنسيق رقم مخصص .
الخيارات
يستخدم هذا الخيار لتعيين بعض الإعدادات الإضافية لبيانات النتيجة.
على سبيل المثال ، مثل أمر مثل no_values سيعيد الخلايا المنسقة فقط.
أسرع طريقة لإنشاء صيغ QUERY - تطابقات Vlookup المتعددة
مهما كانت قوة وظيفة QUERY في جداول بيانات Google ،قد يتطلب الأمر منحنى تعليمي للحصول عليه. من المفيد توضيح كل فقرة على حدة على طاولة صغيرة ، وشيء آخر تمامًا هو محاولة بناء كل شيء بشكل صحيح باستخدام بضع فقرات وجدول أكبر بكثير.
لهذا السبب قررنا تلبيس استعلام جداول بيانات Google بأعلى واجهة سهلة الاستخدام وجعلها وظيفة إضافية.
لماذا تعد تطابقات VLOOKUP المتعددة أفضل من الصيغ؟
حسنًا ، مع الوظيفة الإضافية ليست هناك حاجة مطلقًا إلى :
- اكتشف أي شيء يتعلق بهذه البنود . من السهل حقًا إنشاء الكثير من الشروط المعقدة في الوظيفة الإضافية: كل ما تحتاج إليه على الرغم من طلبهم لجلب أكبر عدد تريده من المطابقات.
ملاحظة. في الوقت الحالي ، تم دمج الجمل التالية في الأداة: حدد ، أين ، الحد ، و الإزاحة . إذا كانت مهمتك تتطلب فقرات أخرى أيضًا ، فيرجى التعليق أدناه - ربما ستساعدنا على التحسين ؛)
- تعرف كيفية إدخال عوامل التشغيل : اختر فقط واحدًا من القائمة المنسدلة.
- اللغز أكثر من الطريقة الصحيحة لإدخال التاريخ والوقت . تتيح لك الوظيفة الإضافية إدخالها بالطريقة التي اعتدت عليها بناءً على لغة جدول البيانات.
نصيحة. هناك دائمًا تلميح متوفر في الأداة مع أمثلة لأنواع بيانات مختلفة.
كمكافأة ، ستتمكن من:
- معاينة كلا النتيجة والصيغة
- إجراء تعديلات سريعة على ملف