هل سمعت عن SQL؟ ربما تكون قد سمعت عنها في سياق تحليل البيانات ولكنك لم تعتقد أبدًا أنها ستنطبق عليك كمسوق. أو ربما فكرت: "هذا مخصص لمستخدمي البيانات المتقدمين. لا يمكنني القيام بذلك أبدا."
حسنًا، لا يمكن أن تكون مخطئًا أكثر. يعتمد المسوقون الأكثر نجاحًا على البيانات، وأحد أهم أجزاء كونهم يعتمدون على البيانات هو جمع البيانات من قواعد البيانات بسرعة. SQL هي الأداة الأكثر شيوعًا للقيام بذلك.
إذا كانت شركتك تقوم بالفعل بتخزين البيانات في قاعدة بيانات، فقد تحتاج إلى تعلم SQL للوصول إلى البيانات. لكن لا تقلق، فأنت في المكان المناسب للبدء. دعونا نقفز مباشرة.
كيفية الاستعلام عن قاعدة بيانات SQL
- تأكد من أن لديك تطبيقًا لإدارة قواعد البيانات (مثل MySQL Workbench وSequel Pro).
- إذا لم يكن الأمر كذلك ، فقم بتنزيل تطبيق إدارة قاعدة البيانات واعمل مع شركتك لتوصيل قاعدة البيانات الخاصة بك.
- فهم قاعدة البيانات الخاصة بك وتسلسلها الهرمي.
- اكتشف الحقول الموجودة في جداولك.
- ابدأ بكتابة استعلام SQL لسحب البيانات المطلوبة.
ما هو SQL؟
SQL هي لغة برمجة تسمح لك بإدارة قواعد البيانات العلائقية ومعالجتها. تعد لغة SQL، التي تُلفظ عادةً "تتمة"، أداة أساسية للشركات التي تحتاج إلى الوصول بانتظام إلى مجموعات كبيرة من البيانات وتحليلها. يتيح لك SQL استرداد بيانات محددة باستخدام استعلام، وتحديث البيانات الموجودة، وإدراج بيانات جديدة، وحذف البيانات، وغير ذلك الكثير.
باستخدام SQL، لا تحتاج إلى تنزيل جدول بيانات Excel ضخم وفتحه للحصول على الإجابات التي تبحث عنها.
يمكنك طرح أسئلة مثل "من هم العملاء الذين اشتروا بذلة حمراء خلال الأشهر الستة الماضية؟" ويقوم SQL بجلب البيانات من قاعدة البيانات الخاصة بك وإعادتها إليك دون الحاجة إلى التدقيق يدويًا في ملف CSV.
لماذا استخدام SQL؟
SQL هي أداة مفيدة للشركات التي تستخدم البيانات (تلميح، معظمها تفعل ذلك). فيما يلي بعض الأمثلة والأسباب التي قد تجعلك ترغب في الانضمام إلى قطار SQL.
- تعد بياناتك أكثر أمانًا في SQL نظرًا لأنه يصعب على المستخدمين حذفها عن طريق الخطأ أو إتلافها مقارنةً بورقة Excel
- يتيح لك SQL إدارة مجموعات البيانات التي تتجاوز آلاف السجلات
- يسمح SQL لعدة مستخدمين بالوصول إلى نفس قاعدة البيانات بسلاسة
- تسمح لك التفويضات المستندة إلى الدور بالتحكم في رؤية البيانات الحساسة
- تسهل SQL تصورًا قويًا للبيانات
- يفرض SQL تكامل البيانات بحيث تكون بياناتك دقيقة ومتسقة دائمًا
التسلسل الهرمي لقاعدة بيانات SQL
قاعدة بيانات SQL هي قاعدة بيانات علائقية، مما يعني أن البيانات منظمة في جداول مرتبطة ببعضها البعض بناءً على علاقات محددة مسبقًا.
يتم تنظيم المعلومات في قاعدة بيانات SQL بشكل هرمي، على غرار شجرة العائلة، مما يعني أن العناصر الموجودة في المستوى الأعلى لها نطاق أوسع وتتفرع إلى كيانات فرعية متعددة وأكثر تحديدًا.
في سياق SQL، المستوى الأعلى هو خادم قاعدة البيانات، وتسمى أيضا مثل. المثيل الخاص بك هو المكان الذي يتم فيه تخزين جميع بياناتك. ضمن مثيل، يمكن أن يكون هناك متعددة قواعد البيانات، يحتوي كل منها على بيانات منظمة بناءً على تصنيف واسع.
يتم تقسيم قاعدة البيانات إلى الجداول. الجدول هو المكان الذي تعيش فيه البيانات الفعلية. بمجرد وصولك إلى مستوى الجدول، يتم تنظيم البيانات حسب الأعمدة و الصفوف ويسكن داخل الحقول، تمامًا مثل جدول بيانات Excel.
دعونا نتظاهر أننا نعمل مع قواعد بيانات متعددة حول الأشخاص في الولايات المتحدة. إدخال الاستعلام "إظهار قواعد البيانات"؛ يكشف عن كل قاعدة بيانات في نظامك، بما في ذلك واحدة بعنوان بريطانيا الجديدة.
تحتوي قاعدة البيانات على جداول، وضمن هذه الجداول توجد بياناتك.
إذا استخدمنا الاستعلام "إظهار الجداول في نيو إنجلاند؛"، فستكون النتيجة جداول لكل ولاية في نيو إنجلاند:
People_Connecticut، People_Maine، People_Massachusetts، People_Newhampshire، People_Rhodeisland، People_Vermont.
وأخيرًا، عليك معرفة الحقول الموجودة في الجداول. الحقول هي أجزاء البيانات المحددة التي يمكنك سحبها من قاعدة البيانات الخاصة بك.
على سبيل المثال، إذا كنت تريد سحب عنوان شخص ما، فقد لا يكون اسم الحقل مجرد "عنوان" - بل قد يتم فصله إلى عنوان_المدينة، وعنوان_الدولة، وعنوان_زيب. لمعرفة ذلك، استخدم الاستعلام "وصف الأشخاص_ماساتشوستس؛".
يوفر هذا قائمة بجميع البيانات التي يمكنك سحبها باستخدام SQL.
لنقم بمراجعة سريعة للتسلسل الهرمي باستخدام مثال نيو إنجلاند:
- قاعدة البيانات لدينا هي بريطانيا الجديدة.
- الجداول لدينا داخل قاعدة البيانات تلك هي People_Connecticut، People_Maine، People_Massachusetts، People_Newhampshire، People_Rhodeisland، People_Vermont.
- تتضمن حقولنا ضمن جدول People_massachusetts ما يلي: Address_city، وaddress_state، وaddress_zip، ولون الشعر، والعمر، والاسم الأول، واسم العائلة.
الآن، دعونا نكتب بعض استعلامات SQL البسيطة لسحب البيانات من ملفنا بريطانيا الجديدة قاعدة البيانات.
كيفية كتابة استعلامات SQL
قبل أن نبدأ، تأكد من أن لديك تطبيقًا لإدارة قاعدة البيانات يسمح لك بسحب البيانات من قاعدة البيانات الخاصة بك. تتضمن بعض الخيارات MySQL or تتمة برو.
ابدأ بتنزيل أحد هذه الخيارات، ثم تحدث إلى قسم تكنولوجيا المعلومات بشركتك حول كيفية الاتصال بقاعدة البيانات الخاصة بك. سيعتمد خيارك على الواجهة الخلفية لمنتجك، لذا تحقق مع فريق المنتج الخاص بك للتأكد من تحديد الخيار الصحيح.
لمعرفة كيفية كتابة استعلام SQL، دعونا نستخدم السؤال التالي:
من هم الأشخاص ذوو الشعر الأحمر في ولاية ماساتشوستس والذين ولدوا في عام 2003؟
باستخدام الأمر SELECT
تختار SELECT الحقول التي تريد عرضها في الرسم البياني الخاص بك. هذه هي المعلومات المحددة التي تريد سحبها من قاعدة البيانات الخاصة بك. في المثال أعلاه ، نريد العثور على ملف الناس الذين يتناسبون مع باقي المعايير.
الاستعلام 1:
اختر
الاسم الأول،
الكنية
;
باستخدام الأمر FROM
FROM يحدد الجدول الذي تريد سحب البيانات منه.
في القسم السابق، علمنا أن هناك ستة جداول لكل ولاية من الولايات الست في نيو إنجلاند: شعب كونيتيكت، وشعب ماين، وشعب ماساتشوستس، وشعب نيوهامبشاير، وشعب روديسلاند، وشعب فيرمونت.
ولأننا نبحث عن أشخاص في ماساتشوستس على وجه التحديد، فسنقوم بسحب البيانات من هذا الجدول المحدد.
هنا هو استعلام SQL الخاص بنا:
اختر
الاسم الأول،
الكنية
من عند
الناس_ماساتشوستس
;
باستخدام الأمر أين
يتيح لك WHERE تصفية استعلام ليكون أكثر تحديدًا. في مثالنا ، نريد تصفية استعلامنا ليشمل فقط الأشخاص ذوي الشعر الأحمر الذين ولدوا في عام 2003. لنبدأ بمرشح الشعر الأحمر.
الاستعلام 2:
اختر
الاسم الأول،
الكنية
من عند
الناس_ماساتشوستس
WHERE
hair_color = "أحمر"
;
من الممكن أن يكون hair_color جزءًا من بيان SELECT الأولي الخاص بك إذا كنت تريد إلقاء نظرة على جميع الأشخاص في ماساتشوستس ولون شعرهم. ولكن إذا كنت تريد تصفية لنرى فقط الأشخاص ذوي الشعر الأحمر ، يمكنك فعل ذلك ببيان WHERE.
باستخدام الأمر بين
إلى جانب يساوي (=) ، BETWEEN هو عامل آخر يمكنك استخدامه للاستعلامات الشرطية. تكون جملة BETWEEN صحيحة للقيم التي تقع بين الحد الأدنى والحد الأقصى للقيم المحددة.
في حالتنا، يمكننا استخدام BETWEEN لسحب السجلات من سنة معينة، مثل 2003.
الاستعلام 3:
اختر
الاسم الأول،
الكنية
من عند
الناس_ماساتشوستس
WHERE
birth_date بين "2003-01-01" و "2003-12-31"
;
باستخدام الأمر AND
ويسمح لك بإضافة معايير إضافية إلى بيان WHERE الخاص بك. تذكر أننا نريد التصفية حسب الأشخاص ذوي الشعر الأحمر بالإضافة إلى الأشخاص الذين ولدوا في عام 2003. وبما أن عبارة "WHERE" الخاصة بنا يتم تناولها وفقًا لمعايير الشعر الأحمر، فكيف يمكننا التصفية حسب سنة ميلاد معينة أيضًا؟
وهنا يأتي دور عبارة AND. في هذه الحالة، عبارة AND هي خاصية تاريخ - ولكن ليس بالضرورة أن تكون كذلك. (ملاحظة: تحقق من تنسيق التواريخ مع فريق المنتج الخاص بك للتأكد من صحتها.)
الاستعلام 4:
اختر
الاسم الأول،
الكنية
من عند
الناس_ماساتشوستس
WHERE
hair_color = "أحمر"
لأي لبس
birth_date بين "2003-01-01" و "2003-12-31"
;
باستخدام الأمر OR
يمكن أيضًا استخدام OR مع جملة WHERE. مع AND ، يجب أن يكون كلا الشرطين صحيحين للظهور في النتائج (على سبيل المثال ، يجب أن يكون لون الشعر أحمر ويجب أن يولد في 2003). مع OR ، يجب أن يكون أي من الشرطين صحيحًا حتى يظهر في النتائج (على سبيل المثال ، يجب أن يكون لون الشعر أحمر or يجب أن يكون من مواليد 2003).
إليك ما تبدو عليه عبارة OR أثناء العمل.
الاستعلام 5:
اختر
الاسم الأول،
الكنية
من عند
الناس_ماساتشوستس
WHERE
hair_color = "أحمر"
OR
birth_date بين "2003-01-01" و "2003-12-31"
;
باستخدام الأمر NOT
يتم استخدام NOT في جملة WHERE لعرض القيم التي يكون فيها الشرط المحدد غير صحيح. إذا أردنا سحب جميع سكان ماساتشوستس بدون الشعر الأحمر، يمكننا استخدام الاستعلام التالي.
الاستعلام 6:
اختر
الاسم الأول،
الكنية
من عند
الناس_ماساتشوستس
حيث لا
hair_color = "أحمر"
;
باستخدام الأمر ORDER BY
يمكن أيضًا إجراء الحسابات والتنظيم ضمن الاستعلام. وهنا يأتي دور الدالتين ORDER BY وGROUP BY. أولاً، سننظر إلى استعلامات SQL الخاصة بنا باستخدام الدالتين ORDER BY ثم GROUP BY. ثم، سوف ندرس بإيجاز الفرق بين الاثنين.
تسمح لك عبارة ORDER BY بالفرز حسب أي من الحقول التي حددتها في عبارة SELECT. في هذه الحالة ، لنرتب حسب الاسم الأخير.
الاستعلام 7:
اختر
الاسم الأول،
الكنية
من عند
الناس_ماساتشوستس
WHERE
hair_color = "أحمر"
لأي لبس
birth_date بين "2003-01-01" و "2003-12-31"
ترتيب حسب
الكنية
;
باستخدام الأمر GROUP BY
تشبه GROUP BY ORDER BY ولكنها تجمع بيانات مماثلة. على سبيل المثال، إذا كان لديك أي تكرارات في بياناتك، فيمكنك استخدام GROUP BY لحساب عدد التكرارات في حقولك.
الاستعلام 8:
اختر
الاسم الأول،
الكنية
من عند
الناس_ماساتشوستس
WHERE
hair_color = "أحمر"
لأي لبس
birth_date بين "2003-01-01" و "2003-12-31"
GROUP BY
الكنية
;
ترتيب عن طريق VS. مجموعة من
لإظهار الفرق بين عبارة ORDER BY وعبارة GROUP BY، دعنا نخطو بإيجاز خارج مثال ماساتشوستس الخاص بنا لننظر إلى مجموعة بيانات بسيطة جدًا. فيما يلي قائمة بأرقام هوية وأسماء أربعة موظفين.
إذا أردنا استخدام عبارة ORDER BY في هذه القائمة ، فسيتم فرز أسماء الموظفين حسب الترتيب الأبجدي. ستبدو النتيجة كما يلي:
إذا استخدمنا عبارة GROUP BY بدلاً من ذلك، فسيتم حساب الموظفين بناءً على عدد المرات التي ظهروا فيها في الجدول الأولي. لاحظ أن بيتر ظهر مرتين في الجدول الأولي، وبالتالي ستكون النتيجة كما يلي:
معي حتى الآن؟ حسنًا، دعنا نعود إلى استعلام SQL الذي قمنا بإنشائه حول الأشخاص ذوي الشعر الأحمر في ماساتشوستس المولودين في عام 2003.
استخدام الدالة LIMIT
قد يستغرق تشغيل الاستعلامات وقتًا طويلاً، اعتمادًا على كمية البيانات الموجودة في قاعدة بياناتك. قد يكون هذا الأمر محبطًا، خاصة إذا ارتكبت خطأً في استعلامك وتحتاج الآن إلى الانتظار قبل المتابعة. إذا كنت تريد اختبار استعلام، تتيح لك الدالة LIMIT تحديد عدد النتائج التي تحصل عليها.
على سبيل المثال، إذا اشتبهنا في أن آلاف الأشخاص لديهم شعر أحمر في ماساتشوستس، فقد نرغب في اختبار استعلامنا باستخدام LIMIT قبل تشغيله بالكامل لضمان حصولنا على المعلومات التي نريدها. لنفترض، على سبيل المثال، أننا نريد فقط رؤية أول 100 شخص في نتيجتنا.
الاستعلام 8:
اختر
الاسم الأول،
الكنية
من عند
الناس_ماساتشوستس
WHERE
hair_color = "أحمر"
لأي لبس
birth_date بين "2003-01-01" و "2003-12-31"
ترتيب حسب
الكنية
مما سيحدث
100
;
باستخدام الأمر INSERT INTO
بالإضافة إلى استرداد المعلومات من قاعدة البيانات العلائقية، يمكن أيضًا استخدام SQL لتعديل محتويات قاعدة البيانات.
وبطبيعة الحال، ستحتاج إلى إذن لتغيير بيانات شركتك. ولكن، في حالة توليك مسؤولية إدارة محتويات قاعدة بيانات، فسنشارك بعض الاستعلامات التي يجب أن تعرفها.
الأول هو عبارة INSERT INTO لوضع قيم جديدة في قاعدة البيانات الخاصة بك.
إذا أردنا إضافة شخص جديد إلى جدول ماساتشوستس، فيمكننا القيام بذلك عن طريق توفير اسم الجدول الذي نريد تعديله أولاً والحقول الموجودة داخل الجدول التي نريد الإضافة إليها.
بعد ذلك، نكتب VALUE مع كل قيمة نريد إضافتها.
الاستعلام 9:
إدراج في
people_massachusetts (address_city، address_state، address_zip، hair_color، age، first_name، last_name)
القيم
(كامبريدج ، ماساتشوستس ، 02139 ، شقراء ، 32 ، جين ، دو)
;
وبدلاً من ذلك، إذا كنت تقوم بإضافة قيمة إلى كل حقل في الجدول، فلن تحتاج إلى تحديد الحقول. ستتم إضافة القيم إلى الأعمدة بالترتيب الذي تم إدراجها به في الاستعلام.
الاستعلام 10:
إدراج في
الناس_ماساتشوستس
القيم
(كامبريدج ، ماساتشوستس ، 02139 ، شقراء ، 32 ، جين ، دو)
;
إذا كنت تريد إضافة قيم إلى حقول معينة فقط، فيجب عليك تحديد هذه الحقول. لنفترض أننا نريد فقط إدراج سجل بالاسم الأول واسم العائلة وحالة_العنوان - يمكننا استخدام الاستعلام التالي.
الاستعلام 11:
إدراج في
people_massachusetts (First_name، last_name، address_state)
القيم
(جين ، دو ، ماساتشوستس)
;
باستخدام أمر التحديث
يمكنك استخدام UPDATE إذا كنت تريد استبدال القيم الموجودة في قاعدة البيانات الخاصة بك بقيم مختلفة. ماذا لو، على سبيل المثال، تم تسجيل شخص ما في قاعدة البيانات على أنه ذو شعر أحمر بينما لديه شعر بني بالفعل؟ يمكننا تحديث هذا السجل ببيانات UPDATE وWHERE.
الاستعلام 12:
قم
الناس_ماساتشوستس
طقم
hair_color = 'بني'
WHERE
first_name = "جين"
لأي لبس
last_name = 'Doe'
;
أو لنفترض أن هناك مشكلة في جدولك حيث تظهر بعض قيم "address_state" على أنها "Massachusetts" وتظهر قيم أخرى على أنها "MA". لتغيير كافة مثيلات "MA" إلى "Massachusetts"، يمكننا استخدام استعلام بسيط وتحديث سجلات متعددة في وقت واحد.
الاستعلام 13:
قم
الناس_ماساتشوستس
طقم
address_state = "ماساتشوستس"
WHERE
Address_state = MA
;
كن حذرًا عند استخدام UPDATE. إذا لم تحدد السجلات التي تريد تغييرها باستخدام عبارة WHERE ، فسوف تقوم بتغيير جميع القيم في الجدول.
باستخدام الأمر DELETE
يقوم DELETE بإزالة السجلات من الجدول الخاص بك. كما هو الحال مع UPDATE، تأكد من تضمين عبارة WHERE حتى لا تحذف الجدول بأكمله عن طريق الخطأ.
أو، إذا عثرنا على عدة سجلات في جدول People_massachusetts الذين عاشوا بالفعل في ولاية ماين، فيمكننا حذف هذه الإدخالات بسرعة عن طريق استهداف حقل Address_state.
الاستعلام 13:
حذف من
الناس_ماساتشوستس
WHERE
address_state = "maine"
;
المكافأة: تلميحات SQL المتقدمة
الآن بعد أن تعلمت كيفية إنشاء استعلام SQL بسيط ، دعنا نناقش بعض الحيل الأخرى التي يمكنك استخدامها لرفع مستوى استفساراتك ، بدءًا من علامة النجمة.
* (علامة النجمة)
عندما تضيف حرف النجمة إلى استعلام SQL الخاص بك ، فإنه يخبر الاستعلام أنك تريد تضمين جميع أعمدة البيانات في نتائجك.
في مثال ماساتشوستس الذي كنا نستخدمه، كان لدينا اسمان فقط للأعمدة: الاسم الأول واسم العائلة. ولكن لنفترض أن لدينا 15 عمودًا من البيانات التي نريد رؤيتها في نتائجنا - سيكون من الصعب كتابة جميع أسماء الأعمدة الخمسة عشر في عبارة SELECT. بدلاً من ذلك، إذا قمت باستبدال أسماء تلك الأعمدة بعلامة النجمة، فسيقوم الاستعلام بسحب كافة الأعمدة إلى النتائج.
إليك ما سيبدو عليه استعلام SQL.
الاستعلام 13:
اختر
*
من عند
الناس_ماساتشوستس
WHERE
hair_color = "أحمر"
لأي لبس
birth_date بين "2003-01-01" و "2003-12-31"
ترتيب حسب
الكنية
مما سيحدث
100
;
٪ (رمز النسبة المئوية)
رمز النسبة المئوية هو حرف بدل ، مما يعني أنه يمكن أن يمثل حرفًا واحدًا أو أكثر في قيمة قاعدة البيانات. تساعد أحرف البدل في تحديد موقع السجلات التي تشترك في الأحرف المشتركة. يتم استخدامها عادةً مع عامل التشغيل LIKE للعثور على نمط في البيانات.
على سبيل المثال، إذا أردنا الحصول على أسماء كل شخص في جدولنا الذي يبدأ رمزه البريدي بالرقم "02"، فيمكننا كتابة الاستعلام التالي.
الاستعلام 14:
اختر
الاسم الأول،
الكنية
WHERE
address_zip مثل "02٪"
;
هنا ، يرمز "٪" إلى أي مجموعة من الأرقام التي تلي "02" ، لذلك يُظهر هذا الاستعلام أي سجل له قيمة لـ address_zip تبدأ بـ "02".
آخر 30 يومًا
بمجرد أن بدأت في استخدام SQL بشكل منتظم، وجدت أن إحدى استعلاماتي تتضمن العثور على الأشخاص الذين اتخذوا إجراءً أو استوفوا مجموعة معينة من المعايير خلال آخر 30 يومًا.
دعونا نتظاهر بأن اليوم هو الأول من كانون الأول (ديسمبر) 1. أنت استطاع أنشئ هذه المعلمات عن طريق جعل تاريخ الميلاد يمتد بين 1 نوفمبر 2021 و30 نوفمبر 2021. وسيبدو استعلام SQL هذا كما يلي:
الاستعلام 15:
اختر
الاسم الأول،
الكنية
من عند
الناس_ماساتشوستس
WHERE
hair_color = "أحمر"
لأي لبس
birth_date بين "2021-11-01" و "2021-11-30"
ترتيب حسب
الكنية
مما سيحدث
100
;
ولكن هذا يتطلب مراعاة التواريخ التي تغطي آخر 30 يومًا، وسيتعين عليك تحديث هذا الاستعلام باستمرار.
بدلاً من ذلك ، لجعل التواريخ تمتد تلقائيًا إلى آخر 30 يومًا بغض النظر عن اليوم ، يمكنك كتابة هذا ضمن AND: birth_date> = (DATE_SUB (CURDATE ()، INTERVAL 30))
(ملاحظة: ستحتاج إلى إعادة التحقق من بناء الجملة هذا مع فريق المنتج الخاص بك لأنه قد يختلف بناءً على البرنامج الذي تستخدمه لسحب استعلامات SQL الخاصة بك.)
لذلك، سيبدو استعلام SQL الكامل الخاص بك كما يلي.
الاستعلام 16:
اختر
الاسم الأول،
الكنية
من عند
الناس_ماساتشوستس
WHERE
hair_color = "أحمر"
لأي لبس
تاريخ الميلاد> = (DATE_SUB (CURDATE () ، INTERVAL 30))
ترتيب حسب
الكنية
مما سيحدث
100
;
بالإحصاء
في بعض الحالات، قد ترغب في حساب عدد المرات التي يظهر فيها معيار الحقل. على سبيل المثال، لنفترض أنك تريد حساب عدد المرات التي تظهر فيها ألوان الشعر المختلفة للأشخاص الذين تقوم بإحصاءهم من ماساتشوستس.
في هذه الحالة، سيكون COUNT مفيدًا، لذا لن تضطر إلى إضافة عدد الأشخاص ذوي ألوان الشعر المختلفة يدويًا أو تصدير تلك المعلومات إلى Excel.
إليك ما سيبدو عليه استعلام SQL هذا:
الاستعلام 17:
اختر
لون الشعر،
COUNT (لون_شعر)
من عند
الناس_ماساتشوستس
لأي لبس
birth_date بين "2003-01-01" و "2003-12-31"
GROUP BY
لون الشعر
;
AVG
يحسب AVG متوسط السمة في نتائج الاستعلام الخاص بك ، باستثناء القيم الفارغة (فارغة). في مثالنا ، يمكننا استخدام AVG لحساب متوسط عمر سكان ماساتشوستس في استعلامنا.
إليك ما يمكن أن يبدو عليه استعلام SQL:
الاستعلام 18:
اختر
AVG (العمر)
من عند
الناس_ماساتشوستس
;
مجموع
SUM هي عملية حسابية بسيطة أخرى يمكنك إجراؤها في SQL. يقوم بحساب القيمة الإجمالية لجميع السمات من الاستعلام الخاص بك. لذا، إذا أردنا جمع جميع أعمار سكان ماساتشوستس، فيمكننا استخدام الاستعلام التالي.
الاستعلام 19:
اختر
SUM (العمر)
من عند
الناس_ماساتشوستس
;
باستخدام الحد الأدنى والحد الأقصى
MIN و MAX هما وظيفتان من وظائف SQL تمنحك القيم الأصغر والأكبر لحقل معين. يمكننا استخدامه للتعرف على الأعضاء الأقدم والأصغر سناً في طاولة ماساتشوستس الخاصة بنا:
الاستعلام التالي سيعطينا سجلاً لأصغر الأشخاص.
الاستعلام 20:
اختر
MIN (العمر)
من عند
الناس_ماساتشوستس
;
وهذا الاستعلام يعطينا الأقدم:
الاستعلام 21:
اختر
ماكس (العمر)
من عند
الناس_ماساتشوستس
;
باستخدام أمر الانضمام
قد يكون هناك وقت تحتاج فيه إلى الوصول إلى المعلومات من جدولين مختلفين في استعلام SQL واحد. في SQL ، يمكنك استخدام عبارة JOIN للقيام بذلك.
(لمن هم على دراية صيغ اكسل، هذا مشابه لاستخدام صيغة VLOOKUP عندما تحتاج إلى دمج المعلومات من ورقتين مختلفتين في Excel.)
لنفترض أن لدينا جدولًا واحدًا يحتوي على بيانات حول معرفات المستخدمين وتواريخ ميلاد جميع سكان ماساتشوستس. بالإضافة إلى ذلك، لدينا جدول منفصل تمامًا يحتوي على معرفات المستخدمين الخاصة بسكان ماساتشوستس ولون شعرهم.
إذا أردنا تحديد لون شعر سكان ماساتشوستس المولودين في عام 2003، فسنحتاج إلى الوصول إلى المعلومات من كلا الجدولين والجمع بينهما. يعمل هذا لأن كلا الجدولين يشتركان في عمود مطابق: معرفات المستخدمين.
ستتغير عبارة SELECT أيضًا قليلاً لأننا نستدعي الحقول من جدولين مختلفين. بدلاً من مجرد إدراج الحقول التي نريد تضمينها في نتائجنا، سنحتاج إلى تحديد الجدول الذي تأتي منه.
(ملاحظة: قد تكون وظيفة العلامة النجمية مفيدة هنا بحيث يتضمن الاستعلام كلا الجدولين في النتائج.)
لتحديد حقل من جدول معين، كل ما علينا فعله هو دمج اسم الجدول مع اسم الحقل. على سبيل المثال، قد تقول عبارة SELECT "table.field" - مع النقطة التي تفصل بين أسماء الجدول والحقول.
نفترض أيضًا بعض الأشياء في هذه الحالة:
- يتضمن جدول تاريخ ميلاد ماساتشوستس الحقول التالية: الاسم_الأول ، الاسم_الأخير ، معرف_المستخدم ، تاريخ الميلاد
- يتضمن جدول ألوان الشعر في ولاية ماساتشوستس الحقول التالية: معرف المستخدم ، لون الشعر
سيبدو استعلام SQL الخاص بك كما يلي.
الاستعلام 21:
اختر
birthdate_massachusetts.first_name،
Birthdate_massachusetts.last_name
من عند
Birthdate_massachusetts JOIN haircolor_massachusetts USING (user_id)
WHERE
hair_color = "أحمر"
لأي لبس
birth_date بين "2003-01-01" و "2003-12-31"
ترتيب حسب
الكنية
;
سيربط هذا الاستعلام بين الجدولين باستخدام الحقل "user_id" الذي يظهر في كل من جدول Birthdate_massachusetts وجدول haircolor_massachusetts. يمكنك بعد ذلك رؤية جدول الأشخاص الذين ولدوا في عام 2003 بشعر أحمر.
باستخدام بيان الحالة
استخدم عبارة CASE عندما تريد إرجاع نتائج مختلفة لاستعلامك بناءً على الشرط الذي تم استيفاؤه. يتم تقييم الشروط بالترتيب. يتم إرجاع النتيجة المقابلة بمجرد استيفاء الشرط، ويتم تخطي جميع الشروط التالية.
يمكنك تضمين شرط ELSE في النهاية إذا لم يتم استيفاء أي شروط. بدون ELSE، سيعود الاستعلام NULL إذا لم يتم استيفاء أي شروط.
فيما يلي مثال لاستخدام CASE لإرجاع سلسلة بناءً على الاستعلام.
الاستعلام 22:
اختر
الاسم الأول،
الكنية
من عند
الناس_ماساتشوستس
هيكل الساعة:
عندما hair_color = "بني" ثم "هذا الشخص لديه شعر بني."
عندما hair_color = "شقراء" ثم "هذا الشخص لديه شعر أشقر."
عندما hair_color = "أحمر" ثم "هذا الشخص لديه شعر أحمر."
ELSE "لون الشعر غير معروف".
END
;
يجب أن يعرف المسوقون استعلامات SQL الأساسية
تهانينا! أنت جاهز لتشغيل استعلامات SQL الخاصة بك.
على الرغم من أن هناك الكثير الذي يمكنك القيام به باستخدام SQL، إلا أنني أتمنى أن تكون هذه النظرة العامة على الأساسيات مفيدة حتى تتمكن من البدء في العمل.
مع وجود أساس قوي للأساسيات، يمكنك التنقل في SQL بشكل أفضل والعمل على بعض الأمثلة الأكثر تعقيدًا.
ملاحظة المحرر: تم نشر هذا المنشور في الأصل في مارس 2015 وتم تحديثه من أجل الشمول.
- محتوى مدعوم من تحسين محركات البحث وتوزيع العلاقات العامة. تضخيم اليوم.
- PlatoData.Network Vertical Generative Ai. تمكين نفسك. الوصول هنا.
- أفلاطونايستريم. ذكاء Web3. تضخيم المعرفة. الوصول هنا.
- أفلاطون كربون، كلينتك ، الطاقة، بيئة، شمسي، إدارة المخلفات. الوصول هنا.
- أفلاطون هيلث. التكنولوجيا الحيوية وذكاء التجارب السريرية. الوصول هنا.
- المصدر https://blog.hubspot.com/marketing/sql-tutorial-introduction
- :لديها
- :يكون
- :ليس
- :أين
- $ UP
- 1
- 10
- 100
- 11
- 12
- 13
- 14
- 15%
- 16
- 17
- 19
- 20
- 2015
- 2021
- 22
- 250
- 30
- 32
- 40
- 400
- 58
- 7
- 8
- 9
- a
- من نحن
- حوله
- فوق
- الوصول
- دقيق
- اكشن
- يقدم
- في الواقع
- تضيف
- وأضاف
- مضيفا
- إضافة
- إضافي
- العنوان
- متقدم
- السن
- الأعمار
- المجاميع
- الكل
- السماح
- السماح
- يسمح
- تقريبا
- سابقا
- أيضا
- دائما
- كمية
- an
- تحليل
- تحليلات
- تحليل
- و
- آخر
- الأجوبة
- أي وقت
- تظهر
- ظهر
- يبدو
- تطبيق
- التقديم
- هي
- AS
- تطلب
- At
- سمات
- تلقائيا
- المتوسط
- AVG
- الى الخلف
- على أساس
- الأساسيات
- BE
- لان
- كان
- قبل
- بدأ
- يجري
- أقل من
- أفضل
- ما بين
- الولادة
- مولود
- على حد سواء
- الفرع
- موجز
- واسع
- أوسع
- مكسورة
- بنى
- لكن
- by
- حساب
- تحسب
- حساب
- تسمى
- دعوة
- كامبردج
- CAN
- يستطيع الحصول على
- حذر
- حقيبة
- الحالات
- معين
- تغيير
- حرف
- الأحرف
- تهمة
- رسم
- التحقق
- الكود
- جمع
- اللون
- عمود
- الأعمدة
- دمج
- تأتي
- يأتي
- آت
- مشترك
- الشركات
- حول الشركة
- الشركة
- مقارنة
- مجمع
- حالة
- الشروط
- التواصل
- النظر
- باستمرار
- يحتوي
- محتويات
- سياق الكلام
- استمرار
- مراقبة
- تصحيح
- المقابلة
- فاسد
- استطاع
- كولدن
- الدورة
- بهيكل
- خلق
- خلق
- المعايير
- العملاء
- البيانات
- تحليل البيانات
- تحليلات البيانات
- مجموعات البيانات
- تعتمد على البيانات
- قاعدة البيانات
- قواعد البيانات
- قواعد البيانات
- التاريخ
- تمور
- يوم
- أيام
- ديسمبر
- القسم
- تعتمد
- اعتمادا
- مطلوب
- حدد
- اختلف
- فرق
- مختلف
- صعبة
- الأرقام
- بحث
- العرض
- عرض
- do
- DOE
- لا
- فعل
- فعل
- لا
- إلى أسفل
- بإمكانك تحميله
- نزولا
- التكرارات
- e
- كل
- في وقت سابق
- إما
- آخر
- الموظفين
- فارغ
- النهاية
- إنكلترا
- ضمان
- الدخول
- كامل
- تماما
- يساوي
- خطأ
- خاصة
- أساسي
- تقييم
- EVER
- كل
- بالضبط
- بحث
- مثال
- أمثلة
- Excel
- ازالة
- القائمة
- تصدير
- يسهل
- فال
- مألوف
- للعائلات
- بعيدا
- قليل
- حقل
- مجال
- الشكل
- تصفية
- العثور على
- الأول
- تناسب
- اتباع
- متابعيك
- متابعات
- في حالة
- شكل
- معادلة
- وجدت
- دورة تأسيسية
- أربعة
- مجانا
- تبدأ من
- محبط
- بالإضافة إلى
- وظيفة
- وظائف
- دولار فقط واحصل على خصم XNUMX% على جميع
- الحصول على
- منح
- معطى
- يعطي
- تجمع
- توجيه
- كان
- الشعر
- العناية باليد
- في المتناول
- يحدث
- يملك
- وجود
- سمعت
- مفيد
- هنا
- تسلسل
- أمل
- كيفية
- كيفية
- HTTP
- HTTPS
- HubSpot
- ضخم
- i
- ID
- تحديد
- IDS
- ie
- if
- أهمية
- in
- تتضمن
- يشمل
- بما فيه
- معلومات
- في البداية
- مثل
- حالات
- بدلًا من ذلك
- سلامة
- إلى
- المُقدّمة
- استهلالي
- المشاركة
- IT
- العناصر
- انها
- جين
- الانضمام
- قفز
- م
- علم
- معروف
- لغة
- كبير
- أكبر
- والأخير
- تعلم
- تعلم
- اسمحوا
- يتيح
- مستوى
- مثل
- مما سيحدث
- قائمة
- المدرج
- قائمة
- حياة
- ll
- تحديد موقع
- طويل
- وقت طويل
- بحث
- يبدو مثل
- أبحث
- تبدو
- الكثير
- صنع
- مين
- جعل
- القيام ب
- إدارة
- إدارة
- إدارة
- يدويا
- مارس
- المسوقين
- ماساتشوستس
- مطابقة
- أمر
- ماكس
- ماكس العرض
- أقصى
- مايو..
- me
- معنى
- يعني
- الأعضاء
- قابل
- ربما
- دقيقة
- الحد الأدنى
- تعديل
- المقبلة.
- الأكثر من ذلك
- أكثر
- الاكثر شهره
- كثيرا
- متعدد
- يجب
- my
- MySQL
- الاسم
- أسماء
- التنقل
- بالضرورة
- حاجة
- الحاجة
- أبدا
- جديد
- لا
- لاحظ
- نوفمبر
- الآن
- عدد
- أرقام
- of
- حسنا
- أقدم
- on
- مرة
- ONE
- منها
- فقط
- جاكيت
- عامل
- خيار
- مزيد من الخيارات
- or
- طلب
- منظمة
- منظم
- في الأصل
- أخرى
- أخرى
- لنا
- خارج
- في الخارج
- على مدى
- نظرة عامة
- الخاصة
- الم
- المعلمات
- جزء
- أجزاء
- الماضي
- نمط
- مجتمع
- فى المائة
- فترة
- إذن
- شخص
- بيتر
- قطعة
- قطعة
- المكان
- أفلاطون
- الذكاء افلاطون البيانات
- أفلاطون داتا
- الرائج
- منشور
- قوي
- معرفة مسبقا
- برو
- المشكلة
- المنتج
- برمجة وتطوير
- واضح
- الملكية
- ويوفر
- توفير
- نشرت
- شراء
- وضع
- الاستفسارات
- سؤال
- الأسئلة المتكررة
- سريع
- بسرعة
- RE
- استعداد
- الأسباب
- سجل
- مسجل
- تسجيل
- أحمر
- بانتظام
- ذات صلة
- العلاقات
- تذكر
- يزيل
- يحل محل
- مثل
- تطلب
- سكان
- هؤلاء
- REST
- نتيجة
- النتائج
- عائد أعلى
- عائدات
- يكشف
- مراجعة
- حق
- يجري
- s
- أكثر أمانا
- نفسه
- قول
- نطاق
- القسم
- انظر تعريف
- طلب
- حدد
- حساس
- مستقل
- فصل
- تتمة
- طقم
- باكجات
- عدة
- مشاركة
- ينبغي
- إظهار
- نخل
- مماثل
- الاشارات
- معا
- منذ
- SIX
- ستة أشهر
- So
- حتى الآن
- تطبيقات الكمبيوتر
- بعض
- شخص ما
- امتداد
- محدد
- على وجه التحديد
- محدد
- جدول
- SQL
- المدرجات
- بداية
- بدأت
- ابتداء
- الولايه او المحافظه
- ملخص الحساب
- البيانات
- المحافظة
- خطوة
- تخزين
- فروعنا
- خيط
- قوي
- منظم
- ناجح
- بالتأكيد
- رمز
- بناء الجملة
- نظام
- T
- جدول
- أخذ
- اتخذت
- حديث
- حصر
- استهداف
- فريق
- يروي
- تجربه بالعربي
- أن
- •
- أساسيات
- المعلومات
- من مشاركة
- منهم
- then
- هناك.
- وبالتالي
- تشبه
- هم
- الأشياء
- هؤلاء
- فكر
- الآلاف
- عبر
- الوقت
- مرات
- عنوان
- بعنوان
- إلى
- اليوم
- استغرق
- أداة
- تيشرت
- الإجمالي
- نحو
- قطار
- شجرة
- صحيح
- يتحول
- البرنامج التعليمي
- مرتين
- اثنان
- نوع
- عادة
- مع
- متحد
- الولايات المتحدة
- تحديث
- تحديث
- us
- تستخدم
- مستعمل
- مستخدم
- المستخدمين
- يستخدم
- استخدام
- الاستفادة من
- قيمنا
- القيم
- جدا
- رؤية
- vs
- انتظر
- تريد
- مطلوب
- وكان
- we
- ويب بي
- حسن
- كان
- ابحث عن
- متى
- التي
- من الذى
- لمن
- لماذا
- سوف
- مع
- في غضون
- بدون
- امرأة
- للعمل
- عامل
- أعمال
- قلق
- سوف
- اكتب
- جاري الكتابة
- خاطئ
- عام
- لصحتك!
- اصغر
- حل متجر العقارات الشامل الخاص بك في جورجيا
- زفيرنت
- الرمز البريدي