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

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

صورة
- - - - -

تكفون محتاجة مساعده في Sqlplus


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

#1 كلاسيـــك

كلاسيـــك

    عضو

  • الأعضــاء
  • 4 مشاركة
  • الاهتمامات:كل مايتعلق بالالكترونيات

تاريخ المشاركة 26 May 2011 - 11:53 AM

السسسلام عليكم ورحمة الله
بصصراحه انا انسانه متورطة بمشروع الداتا بيس وتعبت الف واحوس القى حل مالقيت
بس ان شاء الله القى الحل عندكم
/
الحين ابسأل
لو انا عندي جدول كالتالي

SQL> CREATE TABLE Dishes(
 2   DishID NUMBER(3) primary key,
 3 DishName  VARCHAR2(25),
 4  Dishtype  VARCHAR2(25),
 5 DishPrice  number(3));

وجدول ثاني كذآإ
SQL>  create table Dish_req(
    2 TableNo NUMBER(2),
    3  DishesID NUMBER(2),
    4 Quantity NUMBER(2),
  5   total number(4));

طبعا في علاقة بينهم اللي هي ال DishID
الحين لو ابغى العمود اللي في الجدول الثاني اللي هو Total
يكون يحسبه لي من ناتج ضرب عمود الPrice اللي في الجدول الاول مع عمود ال quantity في الجدول الثاني
كيف :؟
انا لقيت طريقه بس يحسبه لي ب كويري ومايحفظه لي
اللي هو ذا الكود
SQL> select Dish_req.TableNo , sum(DishPRICE*Quantity) Total
   2       from  dish_req , dishes
   3    where dish_req.dishesID = dishes.DishId
  4 group by Dish_req.TableNo ;
انا ابغاه يحفظه في هالعمود
يعني كل مادخلت row جديد في الاعمدة tableNo و disheid و quantity يكون ع طول يحسب التوتل ويخزنه
تكفووووون اي نيد ات
/
لاني بحتاجه في الفورم
/
يارب تردون بسرعه


عِسِسِسِىَ تَشِرقَ شِمَوسِ آلحِظَ وِ عَلِى آلنيِآتَ تِعطيَنِآ ,, !!
......................................................... تِعطيَنِآ ,, !!
.............................................................. تِعطيَنِآ ,, !!

........................................................................صورة صورة


#2 skybird1961

skybird1961

    مشترك

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

تاريخ المشاركة 26 May 2011 - 01:13 PM

الحل بسيط مع الأمر الثاني اللى بيحسب select

يتم إضافة أمر update

update dish_req set total=qty * quantity where dish_req.dishesID = dishes.DishId

#3 كلاسيـــك

كلاسيـــك

    عضو

  • الأعضــاء
  • 4 مشاركة
  • الاهتمامات:كل مايتعلق بالالكترونيات

تاريخ المشاركة 26 May 2011 - 01:40 PM

كيف كذا؟!

لا مايزبط
اولا مشكور اخوي ع الرد
وثانيا
انا فاهمه قصدك وجربته قبل كذا

SQL> update drink_req
  2  set total = (select (sum(DrinkPRICE*Quantity))
  3              from  Drink_req , Drinks 
  4              where Drink_req.DrinkID = Drinks.DrinkID)
  5   where tableNo=TableNo;

6 rows updated.

SQL> select * from  drink_req;

   TABLENO    DRINKID   QUANTITY      TOTAL
---------- ---------- ---------- ----------
         1          5          1         62
         1          3          2         62
         2          9          5         62
         5          7          2         62
         4          3          1         62
         3          3          1         62


بسس المشكلة انه يطلع الناتج غلط
انا ابغاه يحسب لي التوتل لكل tableNo
يعني يحسب الطلبات اللي ع الطاولة رقم 1 لانه لها اكثر من طلب

المشكلة لمن استخدم كويري عادي يطلع الناتج تمام



[left]


SQL> select Drink_req.TableNo   ,sum(DrinkPRICE*Quantity) Total
  2             from  Drink_req , Drinks 
  3            where Drink_req.DrinkID = Drinks.DrinkID
  4     group by Drink_req.TableNo;

   TABLENO      TOTAL
---------- ----------
         1         20
         2         20
         3          7
         4          7
         5          8
[/left]

بس لمن احفظه ب update يخربط


يارب احد فهمني =(

عِسِسِسِىَ تَشِرقَ شِمَوسِ آلحِظَ وِ عَلِى آلنيِآتَ تِعطيَنِآ ,, !!
......................................................... تِعطيَنِآ ,, !!
.............................................................. تِعطيَنِآ ,, !!

........................................................................صورة صورة


#4 ahmedbb

ahmedbb

    عضو مميز

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

تاريخ المشاركة 26 May 2011 - 01:54 PM

السلام عليكم
تعديل الكود كالاتى
update drink_req
2 set total = (select (sum(DrinkPRICE*Quantity))
3 from Drink_req , Drinks
4 where Drink_req.DrinkID = Drinks.DrinkID)
5 where tableNo=TableNo(
group by group by Drink_req.TableNo;
;

"وفوق كل ذى علم عليم"
برامج من انتاجى
شئون العاملين - الحضور و الانصراف - الاستحقاقات و الاجور
ادارة المراكز التدريبية - متابعة الانتاج - ادارة المستشفيات والعيادات - نظام ادارة المعارض ونقاط البيع
برنامج ادارة حركة السيارات - برنامج ادارة المكتبات - برنامج إدارة المدارس والمعاهد
من مواضيعى:
منادة المنيو من اى مكان http://www.araboug.o...nu&fromsearch=1
ايجاد اجمالى حقل معين فى فورم تابلور http://www.araboug.o...showtopic=50174
الوظيفة
Oracle Developer - Data Base Administrator - Programmer

Oracle Instructor

اسكاى بى ahmedoracle74
ahmedbb_work@hotmail
ahmedbb_work@yahoo

 

00201208042608

 

00201142271287
القاهرة - مصر




احمد محمود


#5 كلاسيـــك

كلاسيـــك

    عضو

  • الأعضــاء
  • 4 مشاركة
  • الاهتمامات:كل مايتعلق بالالكترونيات

تاريخ المشاركة 26 May 2011 - 02:38 PM

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

SQL> update drink_req 
  2   set total = (select (sum(DrinkPRICE*Quantity)) 
  3   from Drink_req , Drinks 
  4   where Drink_req.DrinkID = Drinks.DrinkID) 
  5  where tableNo=TableNo;

6 rows updated.

SQL> select * from drink_req;

   TABLENO    DRINKID   QUANTITY      TOTAL
---------- ---------- ---------- ----------
         1          5          1         62
         1          3          2         62
         2          9          5         62
         5          7          2         62
         4          3          1         62
         3          3          1         62
:D :)

عِسِسِسِىَ تَشِرقَ شِمَوسِ آلحِظَ وِ عَلِى آلنيِآتَ تِعطيَنِآ ,, !!
......................................................... تِعطيَنِآ ,, !!
.............................................................. تِعطيَنِآ ,, !!

........................................................................صورة صورة


#6 mustafagamiel

mustafagamiel

    مشرف قسم النماذج والمشاريع

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

تاريخ المشاركة 30 May 2011 - 08:03 AM

try with this

update Dish_req dq set total=(select (Quantity*DishPrice) total from

Dishes d,Dish_req r

where d.DishID=r.DishesID

and r.TableNo=dq.TableNo )


اللهم إن كان رزقي في الســــــــــماء فأنزله
وإن كان في الأرض فأخرجـه
وإن كان بعيدا فقربه وإن كان قريبا فيسره
وإن كان قليلا فكثره وإن كان كثيرا فبارك لي فيه

اللـــهم آمين
لا إله إلا الله وحده لاشريك له- له الملك وله الحمد وهو على كل شيء قدير
لا إله إلا أنت سبحانك-- إني كنت من الظالمين