دليل تحليل البيانات بأسلوب SQL في Google Sheets

Google Sheets QUERY Function: SQL-Style Data Analysis Guide

مقدمة في دالة QUERY

إذا كنت تتمنى أن تعمل Google Sheets كقاعدة بيانات، فإن دالة QUERY هي الحل. تسمح لك هذه الدالة بتحليل البيانات وتصفيتها وتحويلها باستخدام بنية شبيهة بـ SQL (لغة الاستعلام الهيكلية). بدلاً من تكديس صيغ متعددة مثل FILTER وSORT وUNIQUE، يمكنك إنجاز كل شيء غالبًا في صيغة واحدة واضحة وقابلة للقراءة.

ستقدم لك هذه الدليل كيفية عمل دالة QUERY، وكيفية كتابة الاستعلامات، وكيفية تطبيقها على مهام تحليل البيانات الحقيقية.

ما هي دالة QUERY؟

تستخرج دالة QUERY البيانات وتعدلها من نطاق بيانات باستخدام سلسلة استعلام. صيغتها هي:

=QUERY(data, query, [headers])

  • data: نطاق الخلايا للتحليل
  • query: سلسلة نصية مكتوبة بلغة شبيهة بـ SQL
  • headers (اختياري): عدد صفوف العناوين

مثال:

=QUERY(A1:D10, "SELECT A, B WHERE C > 100", 1)

هذا يختار الأعمدة A وB حيث العمود C أكبر من 100.

فهم تركيبة QUERY

تستخدم لغة QUERY الكلمات المفتاحية المألوفة في SQL. هنا أهمها:

  • SELECT: اختيار الأعمدة
  • WHERE: تصفية الصفوف
  • ORDER BY: ترتيب النتائج
  • GROUP BY: تجميع البيانات
  • LIMIT: تحديد عدد الصفوف
  • LABEL: إعادة تسمية الأعمدة

الإشارة إلى الأعمدة

يمكنك الإشارة إلى الأعمدة بطريقتين:

  • بالأحرف: A, B, C
  • بطريقة Col: Col1, Col2, Col3

مثال:

=QUERY(A1:C10, "SELECT Col1, Col3", 1)

أمثلة أساسية

1. تصفية البيانات باستخدام WHERE

افترض أن لديك بيانات مبيعات بالأعمدة: التاريخ، المنتج، الإيرادات.

=QUERY(A1:C100, "SELECT A, B WHERE C > 500", 1)

هذا يُعيد الصفوف حيث تتجاوز الإيرادات 500.

2. ترتيب البيانات باستخدام ORDER BY

=QUERY(A1:C100, "SELECT A, B, C ORDER BY C DESC", 1)

هذا يرتب النتائج حسب الإيرادات بترتيب تنازلي.

3. تحديد النتائج

=QUERY(A1:C100, "SELECT A, B LIMIT 5", 1)

هذا يُظهر الصفوف الخمسة الأولى فقط.

العمل مع النصوص والتواريخ

شروط النصوص

يجب أن تكون القيم النصية بين علامات اقتباس فردية:

=QUERY(A1:C100, "SELECT A, B WHERE B = 'Laptop'", 1)

التضمين والتطابق

  • CONTAINS: تطابق جزئي
  • MATCHES: عبارات منتظمة

مثال:

=QUERY(A1:C100, "SELECT A WHERE B CONTAINS 'Pro'", 1)

تصفية التواريخ

تتطلب التواريخ تنسيقًا معينًا:

=QUERY(A1:C100, "SELECT A WHERE A > date '2024-01-01'", 1)

التجميع باستخدام GROUP BY

يمكن لدالة QUERY تلخيص البيانات باستخدام دوال التجميع:

  • SUM()
  • AVG()
  • COUNT()
  • MAX()
  • MIN()

مثال: إجمالي الإيرادات لكل منتج

=QUERY(A1:C100, "SELECT B, SUM(C) GROUP BY B", 1)

هذا يجمع البيانات حسب المنتج ويحسب إجمالي الإيرادات.

إضافة علامات

=QUERY(A1:C100, "SELECT B, SUM(C) GROUP BY B LABEL SUM(C) 'إجمالي الإيرادات'", 1)

دمج شروط متعددة

يمكنك دمج المرشحات باستخدام AND وOR:

=QUERY(A1:C100, "SELECT A, B WHERE C > 500 AND B = 'Laptop'", 1)

حالات استخدام في الواقع العملي

1. لوحة معلومات المبيعات

استخدم QUERY لإنشاء جدول ملخص ديناميكي:

=QUERY(A1:D500, "SELECT B, SUM(D) GROUP BY B ORDER BY SUM(D) DESC", 1)

هذا يُنشئ قائمة مرتبة بالمنتجات حسب الإيرادات.

2. تتبع أداء الموظفين

=QUERY(A1:E200, "SELECT C, AVG(E) GROUP BY C", 1)

هذا يحسب متوسط أداء الأقسام المختلفة.

3. تنظيف البيانات

إزالة التكرارات باستخدام التجميع:

=QUERY(A1:B100, "SELECT A, B GROUP BY A, B", 1)

نصائح لكتابة صيغ QUERY أفضل

  • ابدأ ببساطة: ابنِ الاستعلام خطوة بخطوة
  • استخدم فواصل الأسطر: اكتب الاستعلامات في خلية منفصلة لسهولة القراءة
  • تحقق من العناوين: عدد العناوين الخطأ يسبب أخطاء
  • استخدم ترقيم الأعمدة: يساعد عندما تتغير أحرف الأعمدة
  • اختبر الشروط: تحقق من المرشحات قبل دمجها

الأخطاء الشائعة وكيفية تصحيحها

1. “تعذر تحليل سلسلة الاستعلام”

عادةً بسبب:

  • الاقتباسات المفقودة
  • صيغة غير صحيحة
  • أسماء أعمدة خاطئة

2. نتائج غير صحيحة

تحقق من:

  • أنواع البيانات (نص مقابل أرقام)
  • تنسيق التواريخ
  • عدد صفوف العناوين

3. خرج فارغ

غالبًا ما يعني أن شروط التصفية لم تجد أي تطابق.

الـQUERY مقابل وظائف أخرى

اليك متى تستخدم QUERY بدلاً من الأدوات الأخرى:

  • استخدم QUERY للتحولات متعددة الخطوات في صيغة واحدة
  • استخدم FILTER لتصفية الصفوف البسيطة
  • استخدم SORT للترتيب البسيط
  • استخدم جداول الدوران للملخصات البصرية

تتفوق QUERY عندما ترغب في التحكم الشبيه بـ SQL دون مغادرة جداول البيانات.

مثال متقدم: تحليل كامل في صيغة واحدة

لنقم بدمج مفاهيم متعددة:

=QUERY(A1:D500, "SELECT B, SUM(D) WHERE D > 100 GROUP BY B ORDER BY SUM(D) DESC LIMIT 10 LABEL SUM(D) 'أعلى الإيرادات'", 1)

هذه الصيغة:

  • تصفية الصفوف حيث تتجاوز الإيرادات 100
  • التجميع حسب المنتج
  • حساب إجمالي الإيرادات
  • ترتيب النتائج بترتيب تنازلي
  • تحديد العقدة بـأعلى 10
  • إعادة تسمية العمود

عندما قد لا تكون QUERY مثالية

بينما تُعد قوية، إلا أن لـQUERY حدود:

  • منحنى تعلم لبنية شبيهة بـ SQL
  • أقل وضوحًا للمبتدئين
  • رسائل الخطأ يمكن أن تكون غامضة

في الحالات البسيطة، قد يكون من الأسهل الجمع بين FILTER وSORT.

أفكار ختامية

تُعد دالة QUERY في Google Sheets واحدة من أقوى الأدوات المتاحة لتحليل البيانات. إنها تجلب الاستعلام بطريقة قواعد البيانات إلى بيئة جداول البيانات المألوفة، مما يتيح لك تنظيف البيانات وتصفيتها وتلخيصها بكفاءة.

بمجرد أن تفهم البنية الأساسية—SELECT، WHERE، GROUP BY—يمكنك استبدال الإعدادات المعقدة لصيغ متعددة بحل واحد وأنيق. ابدأ بأمثلة صغيرة، وابنِ الثقة، وطبقها تدريجيًا على مجموعات البيانات الحقيقية.

مع الممارسة، تصبح QUERY ليست مجرد دالة ولكن مضاعف للإنتاجية.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

Scroll to Top