جلب الاستعلامات عبر SELECT في SQL


جلب الاستعلامات عبر SELECT في SQL

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

1. أساسيات SELECT: جلب كل شيء

أبسط طريقة لجلب البيانات هي استخدام النجمة *، وتعني "كل الأعمدة".

ملاحظة: في بيئات الإنتاج، حاول تتجنب استخدام SELECT * قدر الإمكان. الأفضل تحدد الأعمدة اللي تحتاجها بالضبط عشان تحسن الأداء وتقلل استهلاك الموارد.

مثال:

SELECT * FROM Customers;

هذا الكود بيجيب لك كل الأعمدة وكل الصفوف من جدول Customers.

2. جلب أعمدة محددة

إذا كنت تحتاج أعمدة معينة فقط، حدد أسماءها مفصولة بفاصلة.

مثال:

SELECT CustomerName, Email FROM Customers;

هنا بنشوف بس اسم العميل وبريده الإلكتروني.

3. جلب القيم الفريدة (DISTINCT)

أحياناً يكون عندك قيم متكررة في عمود معين وتبغى تشوف القيم الفريدة بس. هنا يجي دور DISTINCT.

مثال:

SELECT DISTINCT Country FROM Customers;

هذا بيعطيك قائمة بالدول الفريدة اللي عندك في جدول Customers، بدون تكرار.

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

نادراً ما تحتاج كل البيانات. عادةً تبغى بيانات معينة بناءً على شروط محددة. هنا نستخدم WHERE.

مثال: جلب العملاء من السعودية فقط.

SELECT * FROM Customers WHERE Country = 'Saudi Arabia';

تقدر تستخدم عوامل مقارنة كثيرة مثل =, <, >, <=, >=, <> (لا يساوي).

مثال آخر: جلب المنتجات بسعر أكبر من 100.

SELECT ProductName, Price FROM Products WHERE Price > 100;

تقدر تجمع شروط متعددة باستخدام AND و OR.

مثال: عملاء من السعودية وأعمارهم فوق 30.

SELECT * FROM Customers WHERE Country = 'Saudi Arabia' AND Age > 30;

5. ترتيب النتائج (ORDER BY)

عشان تشوف البيانات بترتيب معين (أبجدي، رقمي، تصاعدي، تنازلي)، نستخدم ORDER BY.

الترتيب الافتراضي هو تصاعدي (ASC). لو تبغاه تنازلي، استخدم DESC.

مثال: ترتيب العملاء حسب الاسم أبجدياً.

SELECT CustomerName, Country FROM Customers ORDER BY CustomerName ASC;

مثال: ترتيب المنتجات حسب السعر تنازلياً.

SELECT ProductName, Price FROM Products ORDER BY Price DESC;

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

أحياناً تبغى تشوف أول عدد معين من الصفوف فقط. هذا مفيد جداً في صفحات العرض أو لما تكون البيانات كثيرة.

  • في MySQL و PostgreSQL نستخدم LIMIT.
  • في SQL Server نستخدم TOP.

مثال (MySQL/PostgreSQL): جلب أول 5 عملاء.

SELECT * FROM Customers LIMIT 5;

مثال (SQL Server): جلب أول 5 عملاء.

SELECT TOP 5 * FROM Customers;

ملاحظة: غالباً ما يتم استخدام LIMIT/TOP مع ORDER BY عشان تضمن إنك تحصل على "أعلى" أو "أدنى" قيم معينة.

مثال: أغلى 3 منتجات.

SELECT ProductName, Price FROM Products ORDER BY Price DESC LIMIT 3; -- MySQL/PostgreSQL-- ORSELECT TOP 3 ProductName, Price FROM Products ORDER BY Price DESC; -- SQL Server

خلاصة

أمر SELECT هو أساس التعامل مع البيانات في SQL. بتتقن استخدامه مع الممارسة. تذكر دائماً:

  • SELECT *: جلب كل الأعمدة.
  • SELECT column1, column2: جلب أعمدة محددة.
  • DISTINCT: جلب قيم فريدة.
  • WHERE: تصفية البيانات بشروط.
  • ORDER BY: ترتيب النتائج.
  • LIMIT/TOP: تحديد عدد النتائج.

هذا كان درس سريع عن SELECT. تدرب عليه وبتشوف كيف بيصير سهل وممتع!