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

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

صورة
- - - - -

تم تعديل العنوان: مالفرق بين group by،order by


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

#1 sof

sof

    عضو

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

تاريخ المشاركة 10 December 2005 - 06:14 PM

مالفرق بين group by و having , order by لو سمحتم مع الامثلة التوضيحية

#2 ali_elkomy

ali_elkomy

    عضو

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

تاريخ المشاركة 15 April 2006 - 03:02 PM

بسم الله الرحمن الرحيم

بالنسبة ل_ ORDER BY فهي ترتب الناتج من الاستعلام مهما كان الاستلام نفسه بناء على حقل محدد تحدده بعد ORDER BY والترتيب الافتراضي يكون تصاعدي ويمكن جعله تنازلي بكتابة DESC
SELECT ENAME ,JOB 
FROM EMP
ORDER BY JOB DESC;

أما بالنسبة ل_ GROUP BY فهي تستخدم فقط مع الدوال المتعددة الصفوف مثل SUM , AVG , COUNT , MAX , MIN وهي ضرورية مع هذه الدوال في حالة تريد ترتيب الناتج في مجموعات متشابهة
مثال : عرض مرتبات الموظفين لكل قسم
SELECT DEPTNO , SUM(SAL) FROM EMP
GROUP BY DEPTNO;
ولا بد من استخدام أحد الحقول الموجود في الجدول أو الموجوة في SELECT مع GROUP BY
مثال 2 : عرض الوظائف وعدد الموظفين لكل وظيفة
SELECT JOB , COUNT(JOB)
FROM EMP
GROUP BY JOB ;
[code=auto:0]
ولا يمنع أن تستخدم ORDER BY مع GROUP BY جرب ذلك على المثال الثاني
أرجو أن أكون أوضحت الفرق