بتاريخ: 28 فبراير 200719 سنة comment_92958 هذا السؤال جائني في اخر مقابلة في شركة من اجل التوظيف... ارجوا الفائدة للجميع و الرزق على الله max_5_sal_procedure.txt تقديم بلاغ
بتاريخ: 1 مارس 200719 سنة comment_92973 السلام عليكم مشكور أخي الكريم و يمكن ايضا تحقيق نفس النتيجة بجملة استعلام بسيطة و هي مثال علي مفهوم الtop n viewاي اعلي ارقام لشئ معين مثل اعلي 5 رواتب او قدم 5 موظفين تم تعيينهم و اليكم جملة الاستعلام SELECT ROWNUM RANK, ename, sal FROM (SELECT * FROM emp ORDER BY sal DESC) a WHERE ROWNUM < &&req_num + 1 ORDER BY sal DESC, ename ملحوظة : عند تشغيل الاستعلام سيطلب منك الرقم الذي تريد الاستعلام عنه مثل اعلي 5 او اعلي 10 و هكذا ادخل الرقم نفسه مثل اذا كنا نريد ان نختار اعلي 5 موظفين من حيث الراتب نكتب 5و ايضا يمكن تعديل الاستعلام ليكون علي تاريخ التعيين مثلا مع تمنياتي بالتوفيق تقديم بلاغ
بتاريخ: 7 يونيو 200718 سنة comment_101697 ** طريقة بسيطة وسريعة لإرجاع عدد معين من السجلات في (Report) وهذه الطريقة محددة بعدد معين فقط من السجلات 1 . يتم اختيار (Property Palette) للمجموعة .2 . في خيار (Group) يتم اختيار نوع (Filter Type) مثلاً (First) لإرجاع أول عدد معين من السجلات.3 . يظهر خيار جديد (Number Of Records) نضع فيه عدد السجلات التي نرغب بإرجاعها . تقديم بلاغ
بتاريخ: 7 يونيو 200718 سنة comment_101704 أخى هانى كلنا نعلم Top-N و لكن الاخ صاحب المشاركه ذكر انه كان فى مقابله لوظيفه فربما سألوه ان يقوم بعمل procedure يقوم باستخراج اعلى 5 مرتبات وليس جمله استعلام .. ولك جزيل الشكر تقديم بلاغ
بتاريخ: 26 أبريل 200916 سنة comment_154882 السلام عليكم اخى العزيز محاولة جيدة ولكن الكود طويل ولم يؤدى الغرض المطلوب والان سوف اقوم بعرض حل من الحلول الخمسة وهو قصير ويؤدى الغرض بشكل ممتاز select * from emp E where &N = (select count(distinct nvl(sal,0)) from emp ; where sal >= E.sal ) ارجو ان ينال اعجابك تقديم بلاغ
بتاريخ: 27 أبريل 200916 سنة comment_155042 ده اسهل حل select sal from (select sal from emp order by sal desc) where rownum<6 تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.