إنتقال للمحتوى

  • تسجيل الدخول عبر الفيس بوك تسجيل الدخول عبر تويتر Log In with LinkedIn Log In with Google      تسجيل دخول    
  • إنشاء حساب

صورة
- - - - -

ممكن توضيح : كيف استخدم ال order by مع ال subquery


2 رد (ردود) على هذا الموضوع

#1 thgovrnor

thgovrnor

    عضو

  • الأعضــاء
  • 12 مشاركة

تاريخ المشاركة 20 January 2008 - 01:10 AM

السلام عليكم
كيف استخدم ال order by مع ال subquery
عند استخدمها ادانى erorr يعنى ان القوس الايمن مفقود ايه يعنى اخطاء ده وايه علاجه

#2 mr_khaledali

mr_khaledali

    عضو

  • الأعضــاء
  • 35 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 20 January 2008 - 02:20 AM

لو عايز تحط subquery بعد order يبقى لازم تحط سب كويري مابين قوسين عشان يشغل معاك ان شاء الله
ORACLE CERTIFIED PROFESSIONAL
ORACLE APPLICATION DEVELOPER

#3 Osama Soliman

Osama Soliman

    مشرف سابق وعضو مميز

  • المجموعة الماسية
  • 1,611 مشاركة
  • الاسم الأول:Osama
  • اسم العائلة:Soliman
  • البـلـد: Country Flag
  • المنصب الحالي:Oracle Technical Consultant - Asfour Crystal International

تاريخ المشاركة 20 January 2008 - 09:49 AM

الاخ الفاضل / thgovrnor

السلام عليكم ورحمة الله وبركاته

بالنسبة لاستخدام Order By داخل الـ Subquery : لايجوز على الاطلاق فعل ذلك الا فى حالة واحدة وهى ما تعرف بـ Top n Queries لان وظيفة Order By هو ترتيب الصفوف الناتجة عن الاستعلام وبما ان الـ Subquery لا ينتج عنه صفوف يتم عرضها فان الترتيب ليسنا فى حاجة اليه.

والليك مثال على الـ Top n Query

عرض اعلى 5 مرتبات فى الشركة

SELECT ROWNUM as RANK, last_name, salary
FROM (SELECT last_name,salary FROM employees ORDER BY salary DESC)
WHERE ROWNUM <= 5;


وفى هذا المثال تقوم Order By بترتيب الصفوف داخل الاستعلام الداخلى (حيث يقوم هذا الاستعلام بانشاء View فى الذاكرة مكون من last_name and Salary ويتم ترتيب البيانات داخل هذا الـ View حسب الراتب بطريقة تنازليه Descending ) وبعد ذلك يقوم الاستعلام الخارجى بعرض اول 5 صفوف ناتجة من الاستعلام الداخلى


مع تحياتى

أسامه سليمان
القاهرة

وقل رب زدنى علماً
Osama M. Soliman
Oracle Certified Professional
Oracle Technical Consultant

 Asfour Crystal International
Cairo - Egypt
Osama.Soliman@hotmail.com
Osama.Soliman@asfourcystal.com