اطلب حسب
تُحدد عبارة ORDER BYفي لغة SQL أن عبارة SQL SELECTتُرجع مجموعة نتائج مُرتبة حسب قيم عمود واحد أو أكثر. لا يُشترط تضمين معايير الفرز في مجموعة النتائج (تُطبق قيود على الأعمدة SELECT DISTINCT، والأعمدة الفرعية GROUP BY، والأعمدة الفرعية UNION [DISTINCT]، EXCEPT [DISTINCT]والأعمدة الفرعية INTERSECT [DISTINCT]). يمكن أن تكون معايير الفرز تعبيرات، بما في ذلك أسماء الأعمدة، أو الدوال المُعرّفة من قِبل المستخدم ، أو العمليات الحسابية، أو CASEالتعبيرات. يتم تقييم التعبيرات، وتُستخدم النتائج للفرز، أي القيم المُخزّنة في العمود أو نتائج استدعاء الدالة.
ORDER BYهي الطريقة الوحيدة لترتيب الصفوف في مجموعة النتائج. بدون هذا الشرط، قد يُعيد نظام قاعدة البيانات العلائقية الصفوف بأي ترتيب. إذا كان الترتيب مطلوبًا، ORDER BYفيجب توفيره في SELECTالعبارة المُرسلة من التطبيق. على الرغم من أن بعض أنظمة قواعد البيانات تسمح بتحديد شرط ORDER BYفي الاستعلامات الفرعية أو تعريفات العرض ، إلا أن وجوده لا يؤثر على ترتيب مجموعة النتائج النهائية، ولكنه يصبح منطقيًا عند دمجه مع شرط إزاحة النتيجة أو شرط جلب أولًا. العرض هو جدول علائقي منطقي، ويفرض النموذج العلائقي أن الجدول عبارة عن مجموعة من الصفوف، مما يعني عدم وجود ترتيب فرز على الإطلاق. الاستثناء الوحيد هو بنيات مثل ORDER BY ORDER OF ...(غير مُوحدة في SQL:2003 ) التي تسمح بنشر معايير الفرز من خلال الاستعلامات الفرعية المتداخلة.
لا تُحدد الوظائف الأساسية لمعيار SQL ترتيب فرز افتراضيًا للقيم الفارغة (Nulls) . مع إضافة T611 في SQL:2003 ، بعنوان "عمليات OLAP الأساسية"، يُمكن فرز القيم الفارغة قبل أو بعد جميع قيم البيانات باستخدام عبارات NULLS FIRSTOR NULLS LASTفي ORDER BYالقائمة، على التوالي. مع ذلك، لا تُفعّل جميع أنظمة إدارة قواعد البيانات هذه الوظيفة. وقد تُحدد الأنظمة التي لا تُفعّل هذه الوظيفة طرقًا مختلفة لمعالجة فرز القيم الفارغة في نظام إدارة قواعد البيانات. [ 1 ]
سيتم ترتيب البيانات ORDER BY ... DESCتنازليًا، وإلا فسيتم استخدام الترتيب التصاعدي. (يمكن تحديد الترتيب التصاعدي صراحةً باستخدام ASC.)
أمثلة
حدد جميع البيانات من جدول الموظفين ورتبها حسب اسم العائلة ، ثم الاسم الأول.يتم فرز النتائج حسب عمود اسم العائلة، ثم حسب عمود الاسم الأول إذا تطابق اسم العائلة.
مراجع
- ↑ "معالجة القيم الفارغة في SQLite مقابل محركات قواعد البيانات الأخرى" . تم الاطلاع عليه بتاريخ 25 يناير 2009 .
- كلمات SQL الرئيسية
- نماذج قواعد البيانات
- مواضيع لغات البرمجة
