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

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

صورة
- - - - -

مشكلة في ال GROUP BY


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

#1 com01

com01

    عضو

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

تاريخ المشاركة 12 July 2004 - 02:15 AM

السلام عليكم وبعد ...هل انت جاهز لتحدي على مقولت أستاذي العظيم
1 اريد ان اظهر الراتب مع رقم المديرية في GROUP BY
السؤال :
SQL> select e.deptno , b.aa
from emp e ,(select MAX (AVG(SAL)"AA
from emp
group by deptno )"B

where e.deptno =b.deptno

ماهو شرط الرتب الصحيح يجب ان يظهر سطر واحد وعامودين 1LIN_ 2 COLUMN
يعني الجواب أعلا متوسط راتب لكل الشركات الموجدوه ..؟ و رقم هذه الشركة :D :D

#2 ابو صالح

ابو صالح

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

  • المجموعة الماسية
  • 1,253 مشاركة
  • البـلـد: Country Flag
  • المنصب الحالي:(رحمه الله)

تاريخ المشاركة 12 July 2004 - 03:14 AM

ماهو شرط الرتب الصحيح يجب ان يظهر سطر واحد وعامودين 1LIN_ 2 COLUMN


بصراحه يا com01 شرحك غير واضح شوي :D

بس اللي فهته من اخر سطر هو انك تريد متوسط الراتب لكل قسم
select deptno , avg(sal)
from emp
group by deptno
=======================

DEPTNO           AVG(SAL)
10         2916.66666666667
20         2479.16666666667
30         1566.66666666667
80         3000

<span style='font-size:11pt;line-height:100%'>
زكاة العلم نشرة

Oracle Certifed Expert, OCE RAC
Oracle Certified Professional OCP 9i,10g
ITIL v3

</span>


#3 Amgad

Amgad

    مشرف عام ومشرف قسم تحليل النظم

  • الفريق الإداري
  • 4,557 مشاركة
  • الاسم الأول:امجد
  • اسم العائلة:حلمي
  • البـلـد: Country Flag
  • المنصب الحالي:Business Systems Analyst at al Fanar Co. Riyadh KSA

تاريخ المشاركة 12 July 2004 - 03:29 AM

السلام عليكم
قد تكون هذه الاجابة المطلوبة ...

SQL> select deptno , avg(sal)
2 from emp 3 group by deptno
4 having avg(sal) = ( select max(avg(sal)) from emp group by deptno )
5 /

DEPTNO AVG(SAL)
---------- ----------
10 2916.66667

لا إله إلا الله الحليم الكريم
لا اله إلا الله العلى العظيم
لا اله إلا الله رب السماوات السبع و رب العرش العظيم
‏اللهم ارزقني قبل الموت توبة وعند الموت شهادة وبعد الموت جنة
اللهم ارزقني حسن الخاتمة
اللهم هون علينا سكرات الموت ... ونور علينا قبورنا
اللهم ارزقني الموت وأنا ساجد لك يا ارحم الراحمين
اللهم ثبتني عند سؤال الملكين
اللهم اجعل قبري روضة من رياض الجنة ولا تجعله حفرة من حفر النار
اللهم اني اعوذ بك من فتن الدنيا
اللهم ارحم ابائنا وامهاتنا واغفر لهما وتجاوز عن سيئاتهما وادخلهم فسيح جناتك ... والحقنا بهما يا رب العالمين
اللهم ارحم موتانا وموتى المسلمين واشفي مرضانا ومرضى المسلمين
اللهم اغفر للمسلمين والمسلمات والمؤمنين والمؤمنات الأحياء منهم والأموات
وبارك اللهم على سيدنا محمد صلى الله عليه وسلم
اللهم آمين ... اللهم آمين ... اللهم آمين


....


#4 com01

com01

    عضو

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

تاريخ المشاركة 12 July 2004 - 03:16 PM

السلام عليكم ... شكرا لكل الذين جاوابوني على هذا السؤال بصراحة انا كنت صارلي يومين بفكر بهذا السؤال لذلك تفكيري كان مشتت ومالي قادر اعبر صح بصراحة جنني
بس المطلوب كان عند صديقي Amgad هذا هو الجواب يلي اريدة اكبر متوسط راتب بين المديريات بصراحة موقع مره ضخم وجيد ولازم افيد واستفيد بس الظاهر أني راح استفيد أكثر لوووووول :D .... ابو صالح حقك علي حاكم خليها على ربك بلش الهوس على قولت جدتي :ph34r: :D

#5 ولـــيد

ولـــيد

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

  • المجموعة الماسية
  • 374 مشاركة

تاريخ المشاركة 12 July 2004 - 06:44 PM

السلام عليكم ...

خطأ في الاستعلام واجريت التعديل عليه وشغال ولله الحمد ...
وهذا الاستعلام اتفضلوا

select deptno , avg(sal)
from emp ex
group by deptno
having avg(sal) = ( select max(avg(sal)) from emp group by deptno ) ;


وبالتوفيق :D

:. سبحان الله وبحمده سبحان الله العظيم.
إذا ماخلوت الدهر يوما فلا تقل --- خلوت ولكن قل عليَّ رقيب
ولاتحسبن الله يغفـــــل ساعـــــة --- ولا أن ما يخفى عليه يغيب

#6 ابو صالح

ابو صالح

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

  • المجموعة الماسية
  • 1,253 مشاركة
  • البـلـد: Country Flag
  • المنصب الحالي:(رحمه الله)

تاريخ المشاركة 12 July 2004 - 09:26 PM

صحيح كما قال الاخ العزيز ابوفيصل (Microsaudi) يوجد هناك خطأ يا أمجد ، فلا تستطيع عمل رقم كـ Alias للجدول ،، وطبعا ليس هناك اي جاجة لاستخدامه ايظا ،،

<span style='font-size:11pt;line-height:100%'>
زكاة العلم نشرة

Oracle Certifed Expert, OCE RAC
Oracle Certified Professional OCP 9i,10g
ITIL v3

</span>


#7 Amgad

Amgad

    مشرف عام ومشرف قسم تحليل النظم

  • الفريق الإداري
  • 4,557 مشاركة
  • الاسم الأول:امجد
  • اسم العائلة:حلمي
  • البـلـد: Country Flag
  • المنصب الحالي:Business Systems Analyst at al Fanar Co. Riyadh KSA

تاريخ المشاركة 12 July 2004 - 11:31 PM

السلام عليكم ..
الاخ ابو صالح .. أنا لم استخدم رقم 3 ك alias للجدول
رقم 3 هو رقم مسلسل لترتيب الاوامر فقط وكان نتيجة لعمل نسخ مجموعة الاوامر من sql وهي عبارة عن 4 سطور.
ولقد تعمدت وضع نتيجة تنفيذ امر الاستعلام حتى يكون القارئ مقتنع بصحة الامر المكتوب .. فكيف تكون الاوامر خطأ .. ؟؟
وشكرا

لا إله إلا الله الحليم الكريم
لا اله إلا الله العلى العظيم
لا اله إلا الله رب السماوات السبع و رب العرش العظيم
‏اللهم ارزقني قبل الموت توبة وعند الموت شهادة وبعد الموت جنة
اللهم ارزقني حسن الخاتمة
اللهم هون علينا سكرات الموت ... ونور علينا قبورنا
اللهم ارزقني الموت وأنا ساجد لك يا ارحم الراحمين
اللهم ثبتني عند سؤال الملكين
اللهم اجعل قبري روضة من رياض الجنة ولا تجعله حفرة من حفر النار
اللهم اني اعوذ بك من فتن الدنيا
اللهم ارحم ابائنا وامهاتنا واغفر لهما وتجاوز عن سيئاتهما وادخلهم فسيح جناتك ... والحقنا بهما يا رب العالمين
اللهم ارحم موتانا وموتى المسلمين واشفي مرضانا ومرضى المسلمين
اللهم اغفر للمسلمين والمسلمات والمؤمنين والمؤمنات الأحياء منهم والأموات
وبارك اللهم على سيدنا محمد صلى الله عليه وسلم
اللهم آمين ... اللهم آمين ... اللهم آمين


....


#8 ابو صالح

ابو صالح

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

  • المجموعة الماسية
  • 1,253 مشاركة
  • البـلـد: Country Flag
  • المنصب الحالي:(رحمه الله)

تاريخ المشاركة 13 July 2004 - 12:06 AM

فعلا كلامك صحيح يأمجد رقم 3 هو ترتيب الاسطر في sql*plus ، بس الا تري ان تبدو كأنها ضمن جمله الاستعلام يعني ليست في سطر جديد ،، وهذا اللي جعلني اعتقدها انها alias ،،

واما الان اتضحت المشكلة ، والامر طلع خطأ معي ومع الاخ Microsaudi اعتقد لاننا قمنا بنسخ الاستعلام ثم حذفنا فقط الارقام التي في اول السطور في الاستعلام من دون رقم 3 ،،، ولهذا ظهر هذا الخطأ ،،،

<span style='font-size:11pt;line-height:100%'>
زكاة العلم نشرة

Oracle Certifed Expert, OCE RAC
Oracle Certified Professional OCP 9i,10g
ITIL v3

</span>


#9 Amgad

Amgad

    مشرف عام ومشرف قسم تحليل النظم

  • الفريق الإداري
  • 4,557 مشاركة
  • الاسم الأول:امجد
  • اسم العائلة:حلمي
  • البـلـد: Country Flag
  • المنصب الحالي:Business Systems Analyst at al Fanar Co. Riyadh KSA

تاريخ المشاركة 13 July 2004 - 12:14 AM

السلام عليكم
الاخ / ابو صالح
أشكرك على الايضاح .. واشكر مجهودك الكبير لصالح اعضاء المنتدى كما اشكر الاخ / ابو فيصل على مشاركاته المثمرة والبناءة وبالطبع كل الشكر لادارة هذا المنتدي العظيم
بارك الله فيك يأخي

لا إله إلا الله الحليم الكريم
لا اله إلا الله العلى العظيم
لا اله إلا الله رب السماوات السبع و رب العرش العظيم
‏اللهم ارزقني قبل الموت توبة وعند الموت شهادة وبعد الموت جنة
اللهم ارزقني حسن الخاتمة
اللهم هون علينا سكرات الموت ... ونور علينا قبورنا
اللهم ارزقني الموت وأنا ساجد لك يا ارحم الراحمين
اللهم ثبتني عند سؤال الملكين
اللهم اجعل قبري روضة من رياض الجنة ولا تجعله حفرة من حفر النار
اللهم اني اعوذ بك من فتن الدنيا
اللهم ارحم ابائنا وامهاتنا واغفر لهما وتجاوز عن سيئاتهما وادخلهم فسيح جناتك ... والحقنا بهما يا رب العالمين
اللهم ارحم موتانا وموتى المسلمين واشفي مرضانا ومرضى المسلمين
اللهم اغفر للمسلمين والمسلمات والمؤمنين والمؤمنات الأحياء منهم والأموات
وبارك اللهم على سيدنا محمد صلى الله عليه وسلم
اللهم آمين ... اللهم آمين ... اللهم آمين


....