🗄️ شرح SQL وقواعد البيانات

الترتيب والتحديد: ORDER BY و LIMIT

ORDER BY

يرتّب النتائج حسب عمود:

SELECT * FROM users ORDER BY age;          -- تصاعدي (افتراضي)
SELECT * FROM users ORDER BY age DESC;     -- تنازلي

ترتيب بأكثر من عمود:

SELECT * FROM users ORDER BY city ASC, age DESC;

LIMIT و OFFSET

يحدّد عدد الصفوف المُعادة — مفيد للصفحات (Pagination):

SELECT * FROM products LIMIT 10;            -- أول 10
SELECT * FROM products LIMIT 10 OFFSET 20;  -- تخطّى 20 ثم أحضر 10

💡 في SQL Server تُستخدم TOP: SELECT TOP 10 * FROM products;

DISTINCT

يحذف القيم المكرّرة:

SELECT DISTINCT city FROM users;   -- كل مدينة مرة واحدة

الأسماء البديلة (AS)

تعيد تسمية عمود أو جدول في النتيجة:

SELECT name AS الاسم, age AS العمر FROM users;
SELECT price * 0.85 AS price_after_discount FROM products;

دمج كل شيء

SELECT name, age
FROM users
WHERE age >= 18
ORDER BY age DESC
LIMIT 5;

ترتيب تنفيذ الجملة

تذكّر أن SQL ينفّذ في هذا الترتيب المنطقي: FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY → LIMIT.

🎯 التالي: التعامل مع القيم الفارغة NULL.