IGBSpeed بتاريخ: 10 أغسطس 2005 تقديم بلاغ مشاركة بتاريخ: 10 أغسطس 2005 (معدل) السلام عليكم ورحمة الله وبركاته :أخواني الكرام الموظفين الذين ليس لهم موظفين تحت إدارتهم ، هي عبارة عن إحدى طرق السلف جوين كيف أستطيع أن أعرض الموظفين الذين ليس لهم موظفين تحت إدارتهم :أنظر هذا العبارة لتعرف المطلوب أكثر : select ename from emp where empno not in (select distinct(mgr) from emp); .. . no row selected . ماهو الحل مع الشكر . تم تعديل 10 أغسطس 2005 بواسطة إبراهيم بخش اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Amrooracle بتاريخ: 10 أغسطس 2005 تقديم بلاغ مشاركة بتاريخ: 10 أغسطس 2005 أخى انا لا افهم قصدك جيداًو لكن خذ هذا الرد[/sql]SELECT * FROM WHERE MGR IS NULL اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
m_dba بتاريخ: 10 أغسطس 2005 تقديم بلاغ مشاركة بتاريخ: 10 أغسطس 2005 جرب هادا الكود انا اسف عشان ما جربتو لانوانا مو في البيت حالياselect e.ename ,e.empno,m.ename ,m.empnofrom emp e,emp mwhere mgr_id is null اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
أسامة موسى بتاريخ: 10 أغسطس 2005 تقديم بلاغ مشاركة بتاريخ: 10 أغسطس 2005 (معدل) الاخ m_dbaلنفرض ان هذا الموظف موجود بحقل mgr موظف ولكنه ليس مدير يعني ادخل بالخطأ يعني القيمة مش nullوالحل كما فهمت هو كالتالي Select ename from emp where mgr not in (select empno from emp); بس ممكن توضح اكثر يا اخ ابراهيمما هو المقصود ب أن أعرض الموظفين الذين ليس لهم موظفين تحت إدارتهم تم تعديل 10 أغسطس 2005 بواسطة Admin05 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
محمد السقاف بتاريخ: 15 أغسطس 2005 تقديم بلاغ مشاركة بتاريخ: 15 أغسطس 2005 ا دققنا في جدول الموظفين نجد انه يحتوي على عمود mgr وهذا العمود يمثل رقم المدير للموظف ... اذن هناك علاقه بين عمود المدير ورقم الموظف فالمدير نفسه عباره عن موظف اي يوجد له رقم داخل داخل عمود empno أي اننا نسطيع ربط الجدول بنفسه عن طريق العمودين mgr و empno ولعم الربط لابد من تقسيم الجدول الى جدولين احدهما يمثل جدول الموظفين مثلا (Worker) والاخر يمثل المدراء وليكن ( manager) بحيث يكون جدول وركر كالتاليempno ename mgrجدول مانجر يكونempno ename الان نربط الجدولين عن طريق الاكول جوين (الربط بالتساوي) SELECT Wroker.empno,worker.ename, manager.ename FROM emp worker,emp manager WHERE worker.mgr = manager.empno;هنا سيتم عرض ارقام الموظفين واسماءهم من جدول وركر وسيتم عرض اسماء المدراء من جدول المدراء بالنسبه لطلبك وهو عرض الموظفين الذين ليس لهم مدراء غير الشرط كالاتيWHERE worker.mgr=NULL;اعذرني لو كان هناك اخطاء لان الجها ز اللي انا فيه لا يوجد فيه اوراكل واذا كان قصدك شي ثاني ارجوا التوضيحمع تحياتياخوكلا تنسانا بصالح دعاااائك اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
chayah بتاريخ: 16 أغسطس 2005 تقديم بلاغ مشاركة بتاريخ: 16 أغسطس 2005 الأخ محمد السقاف نسيت أن تعمل outer joint لتصبح التعليمة بالشكل:SELECT Worker.empno,worker.ename, manager.ename FROM emp worker,emp manager WHERE worker.mgr = manager.empno(+) and worker.mgr is null اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
medosal بتاريخ: 16 أغسطس 2005 تقديم بلاغ مشاركة بتاريخ: 16 أغسطس 2005 يوجد تعديل بسيط على جملتك أخ إبراهيم لان mgr يحتوى على قيم null ولذلك نكتب الجملى كالتالىSQL> select ename from emp where empno not in (select nvl(mgr,0) from emp);ENAME----------SMITHALLENWARDMARTINTURNERADAMSJAMESMILLER8 rows selected. اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.