الدرس 12 : شرح برمجة php من الصفر

احمد محمود
Estimated read time: 2 min

الدرس الثاني عشر: استعلامات SQL المتقدمة (Advanced SQL Queries)

في الدرس ده، هنتعلم إزاي نستخدم استعلامات SQL المتقدمة، واللي بتساعدنا نعمل عمليات معقدة على البيانات. هنتناول موضوعات زي الانضمام بين الجداول (JOINs)، المجموعات (GROUP BY)، والفلاتر المتقدمة.



الانضمام بين الجداول (JOINs)

الـJOINs بتساعدنا نربط بين بيانات موجودة في جداول مختلفة. فيه أنواع مختلفة من الـJOINs، لكن هنا هنتناول الأنواع الأساسية:

INNER JOIN

الـINNER JOIN بيربط بين صفوف من جدولين أو أكثر بناءً على شرط معين. فقط الصفوف اللي تتطابق فيها الشروط هي اللي بتظهر.

شاهد أيضاً :-
مثال: استخدام INNER JOIN
Inner Join Example
SELECT users.username, orders.order_id 

FROM users 

INNER JOIN orders ON users.id = orders.user_id;

  

في المثال ده، بنسترجع أسماء المستخدمين ومعرفات الطلبات من جدولين users وorders.

LEFT JOIN

الـLEFT JOIN بيرجع كل الصفوف من الجدول الأيسر، والصفوف المتطابقة من الجدول الأيمن. لو مفيش تطابق، هتظهر القيم الفارغة.

مثال: استخدام LEFT JOIN
Left Join Example
SELECT users.username, orders.order_id 

FROM users 

LEFT JOIN orders ON users.id = orders.user_id;

  

في المثال ده، بنسترجع أسماء المستخدمين ومعرفات الطلبات. حتى لو المستخدم ملوش طلبات، هيظهر اسمه.

استخدام GROUP BY

الأمر GROUP BY بيستخدم لتجميع البيانات بناءً على عمود معين. ده مفيد لما نحتاج نعمل عمليات إحصائية زي العد أو المتوسط.

مثال: استخدام GROUP BY مع COUNT
Group By Example
SELECT user_id, COUNT(*) as order_count 

FROM orders 

GROUP BY user_id;

  

في المثال ده، بنعد الطلبات لكل مستخدم باستخدام COUNT ونجمع النتائج بناءً على user_id.

الفلاتر المتقدمة باستخدام HAVING

بعد استخدام GROUP BY، ممكن نستخدم HAVING لتصفية النتائج بناءً على شروط معينة.

مثال: استخدام HAVING لتصفية النتائج
Having Example
SELECT user_id, COUNT(*) as order_count 

FROM orders 

GROUP BY user_id 

HAVING COUNT(*) > 5;

  

في المثال ده، بنسترجع المستخدمين اللي عندهم أكثر من 5 طلبات.

الملخص

  • اتعلمنا عن الـJOINs وكيفية ربط الجداول المختلفة.
  • استعرضنا استخدام INNER JOIN وLEFT JOIN.
  • اتعرفنا على استخدام GROUP BY وHAVING لتجميع وتصفية البيانات.

في الدرس الجاي، هنتناول كيفية التعامل مع البيانات باستخدام الدوال (Functions) في SQL.

إرسال تعليق

Cookie Consent
تعريف الارتباط

نستخدم ملفات تعريف الارتباط لضمان حصولك على أفضل تجربة.

Oops!
يبدو أن هناك مشكلة في اتصالك بالإنترنت. يرجى الاتصال بالإنترنت والمحاولة مرة أخرى.
AdBlock Detected!
لقد اكتشفنا أنك تستخدم إضافة حظر الإعلانات في متصفحك.
يتم استخدام الإيرادات التي نحصل عليها من الإعلانات لإدارة هذا الموقع، لذا نرجو منك إضافة موقعنا إلى القائمة البيضاء في إضافة حظر الإعلانات الخاصة بك.
Site is Blocked
Sorry! This site is not available in your country.