تخطَّ إلى المحتوى

ORDER BY

ترتيب نتائج الاستعلام ORDER BY

ORDER BY يرتّب صفوف النتيجة تصاعديًا أو تنازليًا حسب عمود واحد أو أكثر، وغالبًا يُستخدم مع LIMIT لتحديد عدد النتائج المعروضة.

ORDER BY يُنفَّذ بعد اختيار وتصفية الصفوف، ويرتّبها حسب عمود أو أكثر. الترتيب الافتراضي تصاعدي (ASC)؛ لعكسه استخدم DESC. يمكن الترتيب حسب أكثر من عمود، وعندها يُستخدم العمود الثاني لكسر التعادل بين صفوف متساوية في العمود الأول.

يقبل أيضًا الترتيب حسب اسم مستعار (alias) عُرِّف في SELECT، أو حسب تعبير محسوب مباشرة، لا يشترط أن يكون عمودًا موجودًا فعليًا في الجدول.

الصياغة

SELECT columns FROM table ORDER BY column1 [ASC|DESC], column2 [ASC|DESC];

📄 مثال

SELECT name, department, salary
FROM employees
ORDER BY department ASC, salary DESC;

أهم النقاط

النقطةالوظيفة
ASCتصاعدي — الترتيب الافتراضي إن لم يُذكر شيء
DESCتنازلي — من الأكبر إلى الأصغر
ترتيب متعدد الأعمدةالعمود الثاني يكسر التعادل في الأول، وهكذا
ORDER BY مع aliasيمكن الترتيب حسب اسم مستعار عُرِّف في SELECT

💡 نصائح عملية

  • دمجه مع LIMIT شائع جدًا لجلب أفضل N نتيجة (أعلى مبيعات، أحدث تسجيل...)
  • رتّب حسب الأعمدة الأكثر تمييزًا أولًا لتقليل الحاجة لعمود ترتيب ثانٍ

⚠️ أخطاء شائعة

  • توقّع أن ترتيب الصفوف مضمون بدون ORDER BY صريح — بدونه لا يوجد ترتيب مضمون في أي قاعدة بيانات
  • الترتيب حسب عمود غير مفهرس على جدول ضخم دون إدراك أثره على الأداء

خصائص ذات صلة

🎓 تريد فهم الصورة الكاملة خطوة بخطوة؟ ابدأ من مسار SQL الكامل بالعربي.