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

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

صورة
- - - - -

المساعدة فى تقرير


أفضل إجابة eslam elbyaly , 09 November 2018 - 04:03 PM

selct order_id, item_id from orders
where price in (select min(price) from orders
where item_id = :item_id)

الـ IN Operator موجود لانه فى حالة اذا وجد نفس السعر لنفس المنتج فى اكثر من طلبية واستخدمت "=" هيرجع خطأ. ولكن يمكنك إضافة
where rownum = 1 فى الـ subquery واستخدام = بدلا من in

قراءة المشاركة كاملة


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

#1 rabie123

rabie123

    عضو مميز

  • الأعضــاء
  • 1,152 مشاركة
  • الاسم الأول:Rabie
  • اسم العائلة:Radwan
  • البـلـد: Country Flag
  • المنصب الحالي:ORACLE DEVELOPER

تاريخ المشاركة 06 November 2018 - 08:19 PM

السلام عليكم ورحمة الله وبركاته

 

لدينا عدة عروض اسعار من مجموعة موريدن على عدد من من الاصناف    لطلبية معينة   ( رقم الطلبية)

المطوب عمل تقرير ياخذ  اقل سعر لكل بند  من الاصناف  

ةيتم عمل بيان  

بند 1                        القيمة (اقل سعر)                  اسم المورد  (رقم  عرض التوريد)

بند 2                        القيمة (اقل سعر)                   اسم المورد  ( رقم عرض  التوريد)

بند 3 

بند 4 الخ

 

وشكرا



#2 eslam elbyaly

eslam elbyaly

    عضو مميز

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

تاريخ المشاركة 06 November 2018 - 08:58 PM

select min(price) from your_table
where condition
group by item_id;

تم التعديل بواسطة eslam elbyaly, 06 November 2018 - 08:59 PM.


#3 rabie123

rabie123

    عضو مميز

  • الأعضــاء
  • 1,152 مشاركة
  • الاسم الأول:Rabie
  • اسم العائلة:Radwan
  • البـلـد: Country Flag
  • المنصب الحالي:ORACLE DEVELOPER

تاريخ المشاركة 09 November 2018 - 10:14 AM

تمام يا استاذ اسلام  بالفعل حصلنا على اقل سعر بهذه الطريقة

 

المشكلة هى المطلوب معرقة من اى عرض (رقم العرض )  حصلت على هذه القيمة   ولا استطيع ان اضعها فى جملة  ال select   بسبب ال group by



#4 eslam elbyaly

eslam elbyaly

    عضو مميز

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

تاريخ المشاركة 09 November 2018 - 04:03 PM   أفضل إجابة

selct order_id, item_id from orders
where price in (select min(price) from orders
where item_id = :item_id)

الـ IN Operator موجود لانه فى حالة اذا وجد نفس السعر لنفس المنتج فى اكثر من طلبية واستخدمت "=" هيرجع خطأ. ولكن يمكنك إضافة
where rownum = 1 فى الـ subquery واستخدام = بدلا من in


تم التعديل بواسطة eslam elbyaly, 09 November 2018 - 04:04 PM.


#5 rabie123

rabie123

    عضو مميز

  • الأعضــاء
  • 1,152 مشاركة
  • الاسم الأول:Rabie
  • اسم العائلة:Radwan
  • البـلـد: Country Flag
  • المنصب الحالي:ORACLE DEVELOPER

تاريخ المشاركة 09 November 2018 - 04:38 PM

مع خالص الشكر  استاذ اسلام وجزاك الله كل خير



#6 eslam elbyaly

eslam elbyaly

    عضو مميز

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

تاريخ المشاركة 09 November 2018 - 09:02 PM

واياكم