بتاريخ: 5 أغسطس 200817 سنة comment_135137 السلام عليكم ورحمة الله وبركاتهأخواني الكرام أنا أريد ان اعرض مجموع الموظفين التابعين لكل إدارة يعني أظهر أن الإدارة الفلانية بها عدد موظفين كذا أنا نجحت في هذا لكن المشكلة أني أريد أن أعرض مع كل إدارة أسماء الموظفين فجربت Group By ولكنها تظهر الموظفين ولا تظهر المجموع بشكل صحيح أرجو المساعدة وشكرا وهذا هو الكود أرجو منكم يإخواني أن تكملوه لي select count(*) total , sum (decode (deptno , 10,1,0))"10", sum (decode (deptno , 20,1,0))"20", sum (decode (deptno , 30,1,0))"30" from emp; // here I want to add the group but i do and it does not work تقديم بلاغ
بتاريخ: 5 أغسطس 200817 سنة comment_135141 لو انت عاوز عدد الموظفين واسمائهم لكل ادارة ده مش ممكن لأن عدد الموظفين بيطلع في خانة واحدة ولكن اسمائهم هيكونو في اكثر من خانه فمش هينفع يكونوا في صف واحد فلو عايز تتطلع اسماء الموظفين لا تستخدم ال group function واتمنى اني اكون فهمت السؤال لانه مش واضح اوي تقديم بلاغ
بتاريخ: 5 أغسطس 200817 سنة كاتب الموضوع comment_135143 نعم أخي أنت فهمت السؤال لكن هناك أخ قال أنها تتم عن طريقnested lGroupingلكن لا أعرف كيف أعملها تقديم بلاغ
بتاريخ: 6 أغسطس 200817 سنة comment_135251 السلام عليكم اخي الكريماصل لو انت عاوز تظهر اسم الموظف و القسم ليه تستخدم الgrouping اصلا ما كده كده هيظهر اسم الموظف والقسم بتاعه لكل الموظفين ممكن تعمل select عادية وترتب بحسب القسمو nested grouping ممكن نستخدمها مثلا في اظهار مجموع المرتبات لكل وظيفه في القسمكالاتي select department_id,job_id,sum (salary) from employees group by department_id,job_id order by department_id تقديم بلاغ
بتاريخ: 6 أغسطس 200817 سنة كاتب الموضوع comment_135252 وعليكم السلام أخي أنا جربت طريقةGROUP BY CUBEبس ظهرت أعمدة كثيرة لا أعرف كيف أتحكم فيها تم تعديل 6 أغسطس 200817 سنة بواسطة islamic_boy600 تقديم بلاغ
بتاريخ: 6 أغسطس 200817 سنة comment_135315 أخى الكريم \ islamic_boy600أنا بصراحة مش عارف أيه شكل ال out put اللى انت تقصده ، أرجو ان تقوم بعمل رسم كروكى للشكل المراد ، أنا عملت اللى انا متصوره ببرنامج ال Paint فى الصورة دى :-لو تصورى خاطىء ، فأرجو أن تقوم بتحرير الصورة على برنامج ال Paint و ظبط الصورة بالشكل اللى يقارب شكل ال Out Put اللى انت عاوزه ؛ و من ثم أرفاق الصورة بالمنتدى .و شكراً تقديم بلاغ
بتاريخ: 6 أغسطس 200817 سنة كاتب الموضوع comment_135327 السلام عليكم ورحمة الله وبركاتهأخي هاني شاكر لك إهتمامك وربنا يجعله سبب في مساعدة إخوانكهذا هو الشكل الذي أرغب فيه تقديم بلاغ
بتاريخ: 6 أغسطس 200817 سنة comment_135332 أخى الكريم \ islamic_boy600شكراً لأرفاقك للصورة التى طلبتها ..... و لكن للأسف ال Out Put الذى ذكرته غير منطقى و لايمكن تنفيذيه ....... فعلى حسب ما فهمت من الصورة انت تريد ان تضع مجموع ال DeptNO فى اى صف من الصفوف التى تشمل رقم هذا القسم ، فعلى أى أساس سوف يتم أختيار هذا الصف !أن هذا هو الكود المنطقى لما تريده :- SELECT ename, deptno, COUNT (deptno) FROM emp GROUP BY ename, deptno ORDER BY deptno; فهو يظهر أسم الموظف و رقم القسم الذى يعمل به و مجموع الاقسام بال Group byأذا كانت لك وجهة نظر مختلفه ، فأعلمنى ..... و أنا سأدرسها .و بالتوفيق . تقديم بلاغ
بتاريخ: 7 أغسطس 200817 سنة كاتب الموضوع comment_135340 بوركت أخي هاني نعم الإستعلام الذي أوردته هو ما أريدجزاك الله خيرا تقديم بلاغ
بتاريخ: 7 أغسطس 200817 سنة comment_135344 معلش يا جماعة بس انا لما جربت الكود طلع مع كل سطر رقم1 وهو ده الطبيعي بس مابيرجعش مجموع الاقسام لان مجموع الاقسام group by الename وال deptno هيكون واحد تم تعديل 7 أغسطس 200817 سنة بواسطة hanyfreedom تقديم بلاغ
بتاريخ: 7 أغسطس 200817 سنة كاتب الموضوع comment_135354 نعم يأخي وهذا ما أسأل فيه هذا هو فكرة الإستعلام لكن المخرجات لا أريدها بهذا الشكل وفي إنتظار رد أخينا هاني تقديم بلاغ
بتاريخ: 7 أغسطس 200817 سنة comment_135415 هل تقصد هذا الكود :- SELECT ename, deptno, DECODE (deptno, 10, (SELECT COUNT (deptno) FROM emp WHERE deptno = 10), 20, (SELECT COUNT (deptno) FROM emp WHERE deptno = 20), 30, (SELECT COUNT (deptno) FROM emp WHERE deptno = 30), 0 ) " The Count fo DEPTNO " FROM emp GROUP BY ename, deptno ORDER BY deptno; بس ناتج مجموع الاقسام هيبقى متكرر ، مش هيبقى موجود بصف واحد من صفوف القسم - كما ذكر أخى islamic_boy600 فى صورته - هيبقى ذى ما فى هذه الصورة :-لو ليك وجهة نظر مختلفة فى ال OUT PUT او على الكود فأرجو أعلامى ..... و شكراً تقديم بلاغ
بتاريخ: 8 أغسطس 200817 سنة comment_135459 هوكده فعلااقرب حاجه من الصورة اللي عاوزها الاخ islamic_boy600 تقديم بلاغ
بتاريخ: 9 أغسطس 200817 سنة comment_135535 السلام عليكم ورحمة الله وبركاتهبعد التحيةاخي فاللهاتمني ان تجد ضالتك في هذا الكود select * from ( SELECT d.DEPTNO,d.DNAME,e.ename,count(e.empNO) FROM dept d, emp e WHERE d.deptno = e.deptno group by rollup(d.DEPTNO,d.DNAME,e.ename) order by d.DEPTNO,d.DNAME ) where dname is not null; وفقك الله الى ماتحب وتضي تقديم بلاغ
بتاريخ: 9 أغسطس 200817 سنة كاتب الموضوع comment_135536 بارك الله فيك أخي أحمد زيدان ووفقك لكل خير هذا فعلا ما كنت أتمناه نفس شكل المخرجات وأطمع في كرمك أن تشرح الكودأعزك الله تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.