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

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

صورة
- - - - -

وصلت لنصف الحل فساعدوني للنصف الآخر


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

#1 أبوعبدالملك المصري

أبوعبدالملك المصري

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

  • المجموعة الماسية
  • 453 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 05 August 2008 - 02:44 PM

السلام عليكم ورحمة الله وبركاته
أخواني الكرام أنا أريد ان اعرض مجموع الموظفين التابعين لكل إدارة يعني أظهر أن الإدارة الفلانية بها عدد موظفين كذا أنا نجحت في هذا لكن المشكلة أني أريد أن أعرض مع كل إدارة أسماء الموظفين فجربت 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

Mohamed Salah
Senior Oracle HRMS Techno Functional Consultant -Saudi Arabia

Ready to answer your questions just send me

Msalah600@gmail.com

My MediaFire Account

10.gif

صفحتي على الفيس بوك


مــن كنــوز الآيــات


#2 mohamed_abdelsalam

mohamed_abdelsalam

    مشترك

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

تاريخ المشاركة 05 August 2008 - 03:12 PM

لو انت عاوز عدد الموظفين واسمائهم لكل ادارة ده مش ممكن لأن عدد الموظفين بيطلع في خانة واحدة ولكن اسمائهم هيكونو في اكثر من خانه
فمش هينفع يكونوا في صف واحد فلو عايز تتطلع اسماء الموظفين لا تستخدم ال group function
واتمنى اني اكون فهمت السؤال لانه مش واضح اوي
سبحان الله وبحمده.. سبحان الله العظيم

mohamed_3abs@hotmail.com
mohamed3absm@gmail.com

#3 أبوعبدالملك المصري

أبوعبدالملك المصري

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

  • المجموعة الماسية
  • 453 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 05 August 2008 - 03:24 PM

نعم أخي أنت فهمت السؤال لكن هناك أخ قال أنها تتم عن طريق
nested lGrouping
لكن لا أعرف كيف أعملها

Mohamed Salah
Senior Oracle HRMS Techno Functional Consultant -Saudi Arabia

Ready to answer your questions just send me

Msalah600@gmail.com

My MediaFire Account

10.gif

صفحتي على الفيس بوك


مــن كنــوز الآيــات


#4 mohamed_abdelsalam

mohamed_abdelsalam

    مشترك

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

تاريخ المشاركة 06 August 2008 - 10:50 AM

السلام عليكم اخي الكريم
اصل لو انت عاوز تظهر اسم الموظف و القسم ليه تستخدم الgrouping اصلا ما كده كده هيظهر اسم الموظف والقسم بتاعه لكل الموظفين
ممكن تعمل select عادية وترتب بحسب القسم
و nested grouping ممكن نستخدمها مثلا في اظهار مجموع المرتبات لكل وظيفه في القسم
كالاتي
select department_id,job_id,sum (salary)
from employees group by department_id,job_id
order by department_id

سبحان الله وبحمده.. سبحان الله العظيم

mohamed_3abs@hotmail.com
mohamed3absm@gmail.com

#5 أبوعبدالملك المصري

أبوعبدالملك المصري

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

  • المجموعة الماسية
  • 453 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 06 August 2008 - 11:21 AM

وعليكم السلام أخي أنا جربت طريقةGROUP BY CUBE
بس ظهرت أعمدة كثيرة لا أعرف كيف أتحكم فيها

تم التعديل بواسطة islamic_boy600, 06 August 2008 - 11:25 AM.

Mohamed Salah
Senior Oracle HRMS Techno Functional Consultant -Saudi Arabia

Ready to answer your questions just send me

Msalah600@gmail.com

My MediaFire Account

10.gif

صفحتي على الفيس بوك


مــن كنــوز الآيــات


#6 hanyfreedom

hanyfreedom

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

  • المجموعة الماسية
  • 1,481 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:Chess , Sudoku

تاريخ المشاركة 06 August 2008 - 08:46 PM

أخى الكريم \ islamic_boy600

أنا بصراحة مش عارف أيه شكل ال out put اللى انت تقصده ، أرجو ان تقوم بعمل رسم كروكى للشكل المراد
، أنا عملت اللى انا متصوره ببرنامج ال Paint فى الصورة دى :-
ملف مرفق  OutPut_Example.PNG   9كيلو   53 عدد مرات التحميل
لو تصورى خاطىء ، فأرجو أن تقوم بتحرير الصورة على برنامج ال Paint و ظبط الصورة
بالشكل اللى يقارب شكل ال Out Put اللى انت عاوزه ؛ و من ثم أرفاق الصورة بالمنتدى .

و شكراً

#7 أبوعبدالملك المصري

أبوعبدالملك المصري

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

  • المجموعة الماسية
  • 453 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 07 August 2008 - 12:15 AM

السلام عليكم ورحمة الله وبركاته
أخي هاني شاكر لك إهتمامك وربنا يجعله سبب في مساعدة إخوانك
هذا هو الشكل الذي أرغب فيه

ملفات مرفقة

  • ملف مرفق  001.JPG   11.74كيلو   31 عدد مرات التحميل

Mohamed Salah
Senior Oracle HRMS Techno Functional Consultant -Saudi Arabia

Ready to answer your questions just send me

Msalah600@gmail.com

My MediaFire Account

10.gif

صفحتي على الفيس بوك


مــن كنــوز الآيــات


#8 hanyfreedom

hanyfreedom

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

  • المجموعة الماسية
  • 1,481 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:Chess , Sudoku

تاريخ المشاركة 07 August 2008 - 02:13 AM

أخى الكريم \ islamic_boy600

شكراً لأرفاقك للصورة التى طلبتها ..... و لكن للأسف ال Out Put الذى ذكرته غير منطقى و لايمكن تنفيذيه ....... فعلى حسب ما فهمت من الصورة انت تريد ان تضع مجموع ال DeptNO فى اى صف من الصفوف التى تشمل رقم هذا القسم ، فعلى أى أساس سوف يتم أختيار هذا الصف !
ملف مرفق  001_Modified.JPG   32.9كيلو   25 عدد مرات التحميل

أن هذا هو الكود المنطقى لما تريده :-

SELECT   ename, deptno, COUNT (deptno)
FROM emp GROUP BY ename, deptno
ORDER BY deptno;


فهو يظهر أسم الموظف و رقم القسم الذى يعمل به و مجموع الاقسام بال Group by

أذا كانت لك وجهة نظر مختلفه ، فأعلمنى ..... و أنا سأدرسها .

و بالتوفيق .

#9 أبوعبدالملك المصري

أبوعبدالملك المصري

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

  • المجموعة الماسية
  • 453 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 07 August 2008 - 08:23 AM

بوركت أخي هاني نعم الإستعلام الذي أوردته هو ما أريد
جزاك الله خيرا

Mohamed Salah
Senior Oracle HRMS Techno Functional Consultant -Saudi Arabia

Ready to answer your questions just send me

Msalah600@gmail.com

My MediaFire Account

10.gif

صفحتي على الفيس بوك


مــن كنــوز الآيــات


#10 mohamed_abdelsalam

mohamed_abdelsalam

    مشترك

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

تاريخ المشاركة 07 August 2008 - 09:07 AM

معلش يا جماعة بس انا لما جربت الكود طلع مع كل سطر رقم1 وهو ده الطبيعي
بس مابيرجعش مجموع الاقسام لان مجموع الاقسام group by الename وال deptno هيكون واحد

تم التعديل بواسطة hanyfreedom, 07 August 2008 - 05:41 PM.

سبحان الله وبحمده.. سبحان الله العظيم

mohamed_3abs@hotmail.com
mohamed3absm@gmail.com

#11 أبوعبدالملك المصري

أبوعبدالملك المصري

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

  • المجموعة الماسية
  • 453 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 07 August 2008 - 10:03 AM

نعم يأخي وهذا ما أسأل فيه هذا هو فكرة الإستعلام لكن المخرجات لا أريدها بهذا الشكل وفي إنتظار رد أخينا هاني

Mohamed Salah
Senior Oracle HRMS Techno Functional Consultant -Saudi Arabia

Ready to answer your questions just send me

Msalah600@gmail.com

My MediaFire Account

10.gif

صفحتي على الفيس بوك


مــن كنــوز الآيــات


#12 hanyfreedom

hanyfreedom

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

  • المجموعة الماسية
  • 1,481 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:Chess , Sudoku

تاريخ المشاركة 07 August 2008 - 05:34 PM

هل تقصد هذا الكود :-

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 فى صورته - هيبقى ذى ما فى هذه الصورة :-

ملف مرفق  DeptNO_Count.PNG   38.77كيلو   36 عدد مرات التحميل

لو ليك وجهة نظر مختلفة فى ال OUT PUT او على الكود فأرجو أعلامى ..... و شكراً

#13 mohamed_abdelsalam

mohamed_abdelsalam

    مشترك

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

تاريخ المشاركة 08 August 2008 - 06:13 AM

هوكده فعلااقرب حاجه من الصورة اللي عاوزها الاخ islamic_boy600
سبحان الله وبحمده.. سبحان الله العظيم

mohamed_3abs@hotmail.com
mohamed3absm@gmail.com

#14 أبوعبدالملك المصري

أبوعبدالملك المصري

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

  • المجموعة الماسية
  • 453 مشاركة
  • البـلـد: Country Flag

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

شكرا يأخي هاني وبارك الله فيك

Mohamed Salah
Senior Oracle HRMS Techno Functional Consultant -Saudi Arabia

Ready to answer your questions just send me

Msalah600@gmail.com

My MediaFire Account

10.gif

صفحتي على الفيس بوك


مــن كنــوز الآيــات


#15 Ahmed Zain

Ahmed Zain

    مشرف

  • فريق الإشراف
  • 261 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 09 August 2008 - 10:41 AM

السلام عليكم ورحمة الله وبركاته
بعد التحية
اخي فالله
اتمني ان تجد ضالتك في هذا الكود

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;


صورة

وفقك الله الى ماتحب وتضي

اللهم صلي وسلم على نبينا محمد وعلى اله وصحبه اجمعين الى يوم الدين سلام طيبا مباركا فيه


يا ابن آدم:انما انت أيام...كلما مضى منك يوم مضى بعضك العمر يمضي ولا تدري متى ينتهي فهل عملت لآخرتك؟؟؟


﴿ كتبت وقد أيقنت يوم كتابتي بأن يدي تفنى ويبقى كتابها فإن كتبت خيراً ستجزى بمثله وإن كتبت شراً عليها حسابها ﴾

 




Ahmed Zain El-Abedeen Mohamed
Senior Oracle Developer


My C.V & Cover Latter


لا يؤخذ العلم من أربعة ويؤخذ ممن سوى ذلك ولا يؤخذ من سفيه ولا من صاحب هوى ولا ممن يكذب في أحاديث الناس ولا ممن لا يعرف ما يحدث به من حيث المصادر والاختيار