الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Sum With Select

Featured Replies

بتاريخ:

select e.emp_id [b],sum(v.interval)[/b],to_char( e.hire_date,'dd/mm/yyyy'),v.id , to_char(v.DATE_FROM,'dd/mm/yyyy'),to_char(v.DATE_to,'dd/mm/yyyy'),
v.INTERVAL,to_char(sysdate,'yyyy')
from employees e , vacation v 
where e.emp_id=:global.g_emp_id and e.emp_id =v.emp_id and to_char(v.DATE_FROM,'yyyy')=to_char(sysdate,'yyyy');



هذا الكود يجلب لي اجازات الموظف خلال هذه السنة ولكن ما المشكلة في sum(v.interval)?????

بتاريخ:

أين ال Group By؟

بتاريخ:
  • كاتب الموضوع

معلش انا ما وضحت المشكلة كويس

اخي الكريم هذا هو الكود

select sum(v.interval),e.emp_id ,to_char( e.hire_date,'dd/mm/yyyy'),v.id , to_char(v.DATE_FROM,'dd/mm/yyyy')
,v.INTERVAL,to_char(sysdate,'yyyy'),to_char(sysdate,'yyyy') - to_char(e.hire_date,'yyyy')

from employees e , vacation v 
where e.emp_id=69 and e.emp_id =v.emp_id and to_char(v.DATE_FROM,'yyyy')=to_char(sysdate,'yyyy')
GROUP BY v.emp_id;


انا واضع group by ولكن المشكلة بيعطيني الخطأ التالي :

ORA-00979: not a GROUP BY expression

ملاحظة ممكن تفيد انا بجيب بيانات من جدولين واحيانا بيعترض على to_char

بتاريخ:
يجب استخدام HAVING مع جملة الـــ GROUP BY

مين الاي قال ان لازم استخدم having مع group by

يأخي يوجد دالة من دوال التجميع يبقى اي عمود يكتب بعد السيليكت لازم يجي بعد ال group by
بتاريخ:
  • كاتب الموضوع

ايه يعني يا اخوان شووووووووووو الحل؟؟؟؟؟؟؟؟؟

بتاريخ:

السلام عليكم
اخي ماهر...هذا معنى الخطأ...

ORA-00979: not a GROUP BY expression


Cause: The GROUP BY clause does not contain all the expressions in the SELECT clause. SELECT expressions that are not included in a group function, such as AVG, COUNT, MAX, MIN, SUM, STDDEV, or VARIANCE, must be listed in the GROUP BY clause.
Action: Include in the GROUP BY clause all SELECT expressions that are not group function arguments.

تم تعديل بواسطة PALI.ORACLE

بتاريخ:
  • كاتب الموضوع

اخي الحبيب
انا فاهم كلام حضرتك بس المشكلة الان انو المجموع sum ما بيعطيني مجموع كل العمود للموظف وانما بيعطيني لكل صف مجموع العمود للصف نفسه يعني هي هي نفس القيمة اذا ماذا استفدت انا من استخدام المجموع ؟

بتاريخ:

اخي ماهر انت عامل GROUP BY على رقم الموظف صح ؟
ورقم الموظف بكون PRIMARY KEY يعني ما رح يكون في ارقام للموظفين متشابهه
فــ كيف رح تشتغل معاك GROUP BY ???
لاحظ الصورة متلا:

post-73694-1247664219_thumb.jpg

بتاريخ:
  • كاتب الموضوع

اخي العزيز مشكور تم حل المشكلة بوضع group by لكل العناصر

بتاريخ:
  • كاتب الموضوع

تفضلو الحل:

select sum(v.interval),e.emp_id ,to_char( e.hire_date,'dd/mm/yyyy'),v.id , to_char(v.DATE_FROM,'dd/mm/yyyy')
,v.INTERVAL,to_char(sysdate,'yyyy'),to_char(sysdate,'yyyy') - to_char(e.hire_date,'yyyy')

from employees e , vacation v
where e.emp_id=69 and e.emp_id =v.emp_id and to_char(v.DATE_FROM,'yyyy')=to_char(sysdate,'yyyy')
GROUP BY v.emp_id,e.emp_id,e.hire_date,v.id,v.date_from,v.interval;

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.