الدرس 4

أمر SELECT

الوحدة الثانية: الاستعلامات الأساسية مدة القراءة: 15 دقيقة

مقدمة عن SELECT

أمر SELECT هو أكثر أوامر SQL استخداماً. يُستخدم لاسترجاع البيانات من جدول أو أكثر في قاعدة البيانات.

معلومة

كلمة SELECT تعني "اختر" بالعربية. أنت تختار البيانات التي تريد عرضها من الجدول.

الصيغة الأساسية

SELECT column1, column2, ...
FROM table_name;

حيث:

  • SELECT - الأمر الذي يبدأ الاستعلام
  • column1, column2 - أسماء الأعمدة التي تريد عرضها
  • FROM - تحدد الجدول المصدر
  • table_name - اسم الجدول

أمثلة عملية

لنستخدم جدول الموظفين التالي في أمثلتنا:

-- جدول employees
+----+----------+------+--------+------------+
| id | name     | age  | salary | department |
+----+----------+------+--------+------------+
| 1  | أحمد     | 30   | 5000   | المبيعات   |
| 2  | سارة     | 28   | 6000   | التقنية    |
| 3  | محمد     | 35   | 7500   | الإدارة    |
| 4  | فاطمة    | 32   | 5500   | المبيعات   |
| 5  | علي      | 29   | 4500   | التقنية    |
+----+----------+------+--------+------------+

1. اختيار أعمدة محددة

SELECT name, salary
FROM employees;

النتيجة:

+----------+--------+
| name     | salary |
+----------+--------+
| أحمد     | 5000   |
| سارة     | 6000   |
| محمد     | 7500   |
| فاطمة    | 5500   |
| علي      | 4500   |
+----------+--------+

2. اختيار جميع الأعمدة (*)

لعرض جميع الأعمدة، استخدم الرمز *:

SELECT *
FROM employees;
تحذير

تجنب استخدام SELECT * في التطبيقات الحقيقية لأنه يُبطئ الأداء. دائماً حدد الأعمدة التي تحتاجها فقط.

3. استخدام الأسماء المستعارة (Aliases)

يمكنك إعطاء أسماء بديلة للأعمدة باستخدام AS:

SELECT name AS اسم_الموظف,
       salary AS الراتب
FROM employees;

النتيجة:

+------------+--------+
| اسم_الموظف | الراتب |
+------------+--------+
| أحمد       | 5000   |
| سارة       | 6000   |
| محمد       | 7500   |
+------------+--------+

4. إزالة التكرار (DISTINCT)

لعرض القيم الفريدة فقط:

SELECT DISTINCT department
FROM employees;

النتيجة:

+------------+
| department |
+------------+
| المبيعات   |
| التقنية    |
| الإدارة    |
+------------+

5. العمليات الحسابية

يمكنك إجراء عمليات حسابية على الأعمدة:

SELECT name,
       salary,
       salary * 12 AS الراتب_السنوي
FROM employees;

النتيجة:

+----------+--------+--------------+
| name     | salary | الراتب_السنوي |
+----------+--------+--------------+
| أحمد     | 5000   | 60000        |
| سارة     | 6000   | 72000        |
| محمد     | 7500   | 90000        |
+----------+--------+--------------+

6. تحديد عدد النتائج (LIMIT)

لتحديد عدد الصفوف المُسترجعة:

SELECT *
FROM employees
LIMIT 3;
نصيحة

استخدم LIMIT عند استكشاف جداول كبيرة لتجنب تحميل آلاف الصفوف دفعة واحدة.

تمارين للتطبيق

جرب كتابة الاستعلامات التالية:

  1. اعرض أسماء وأعمار جميع الموظفين
  2. اعرض الأقسام الموجودة بدون تكرار
  3. اعرض الاسم والراتب مع الراتب بعد زيادة 10%

الخلاصة

في هذا الدرس تعلمنا:

  • أمر SELECT لاسترجاع البيانات
  • اختيار أعمدة محددة أو جميع الأعمدة (*)
  • استخدام الأسماء المستعارة (AS)
  • إزالة التكرار (DISTINCT)
  • العمليات الحسابية على الأعمدة
  • تحديد عدد النتائج (LIMIT)

في الدرس القادم، سنتعلم كيفية تصفية النتائج باستخدام WHERE.