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

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

صورة
- - - - -

سؤال عن العمليات الحسابيه


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

#1 مساعد مبرمج

مساعد مبرمج

    مشترك

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

تاريخ المشاركة 18 November 2006 - 01:51 PM

هل يمكن عمل حساب للعمده التي على الجدول

create table f(
f1 number,
f2 number,
f3 number.
tot number,
re varchar2(10);

اريد حساب العمود f1+f2+f3 ويطلع المجموع على عمود tot

وعمود re ابحط فيه شرط اذا كان مجموع الدرجات في ال عامود ال tot 40 ناجح

اما اذا كان 20 راسب

هل يمكن عمل هذا على مستوى الجدول ولا اريده على الفورمه

لاني سوف اربط هذا الجدول بموقع

هل تنفع هذه الطريقه ياليت حد يعطنا الفكره

#2 -=|mOOdY|=-

-=|mOOdY|=-

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

  • المجموعة الماسية
  • 1,324 مشاركة

تاريخ المشاركة 18 November 2006 - 02:22 PM

اخوي اخر عمودين لا داعي منهما فانت تستطيع حسابهما من دون ايجاد عمود مخصص للعملية
SQL> insert into tt values (10,10,20);

1 row created.

SQL> insert into tt values (5,5,10);

1 row created.

SQL> select * from tt;

        F1         F2         F3                                                
---------- ---------- ----------                                                
        10         10         20                                                
         5          5         10                                                

SQL> select f1,f2,f3,(f1+f2+f3) sum, case (f1+f2+f3) when 40 then 'Pass' else 'Fail' end  "re" from tt;

        F1         F2         F3        SUM re                                  
---------- ---------- ---------- ---------- ----                                
        10         10         20         40 Pass                                
         5          5         10         20 Fail                                

SQL> spool off;


هاذا اذا كان المجموع عندك محدد يعني يااما يكون 40 او يكون 20

اذا كان قصدك اكبر او اصغر الرجاء التوضيح

صورة

!!! كم أنت عبقري !!!


#3 مساعد مبرمج

مساعد مبرمج

    مشترك

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

تاريخ المشاركة 18 November 2006 - 03:13 PM

اخي الكريم سوف اوضحلك مالذي اريد ان افعله

اريد عمل حساب اختبار الشهر الاول + اختبار الشهر الثاني + النهائي

الشهر الاول من 25 والشهر الثاني من 25 = 50

النهائي 50 المجموعه كله 100 درجه
اريد ان احسب الشهر الاول + الشهر الثاني+ النهائي ,عشان يطلع المجموع

وفي الاخر نريد وضع شرط على المجموع يكون لو اخذ 60 الى 100 ناجح
ولو اخذ اقل من 60 يكون راسب

وبالتالي اريد ان اربط هذا الجدول بموقع لكي يعرض هذه البيانات هل هذا ممكن

#4 -=|mOOdY|=-

-=|mOOdY|=-

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

  • المجموعة الماسية
  • 1,324 مشاركة

تاريخ المشاركة 18 November 2006 - 04:04 PM

تفضل اخوي

SQL> create table grades
  2  (st_no number primary key,
  3  f1 number,
  4  f2 number,
  5  f3 number);

Table created
.


SQL> insert into grades values (1,20,20,40);

1 row created.

SQL> insert into grades values (2,10,20,20);

1 row created.


SQL> insert into grades values (3,10,15,20);

1 row created.
create or replace function return_status(p_stno number)
return varchar2
is
v_tot number;
begin
select (f1+f2+f3)
into v_tot
from grades
where st_no =p_stno;
if v_tot >= 50 then
return 'PASS';
else
return 'FAIL';
end if;
end;

create view new_grades as
 select f1,f2,f3,(f1+f2+f3) sum,return_status(st_no) status
 from grades;




[/CODE]

[/CODE]

صورة

!!! كم أنت عبقري !!!


#5 مساعد مبرمج

مساعد مبرمج

    مشترك

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

تاريخ المشاركة 18 November 2006 - 04:30 PM

الله يجزيك الف خير

لنا رجع ان شالله

----------------

تم عمل الاتي وهذه النتيجه

SQL> select * from grades;

     ST_NO         F1         F2         F3
---------- ---------- ---------- ----------
         1         20         20         40
         2         10         20         20
         3         10         15         20
         4         25         25         50

الطريقه مضبوطه لاكن ناقصها عامود يحسب f1+f2+f3 ويظهر مجموعهم
مثلا رقم اربعه 25+25+50 اريده يكتب 100 فبذالك ننشء عامود ثالث فيه المجموع

ولاكن اين النتيجه pass اريدها ان تظهر امامهم سواء كان PASS او FAIL

ومافائده هذا الامر

create view new_grades as
select f1,f2,f3,(f1+f2+f3) sum,return_status(st_no) status
from grades;

تم التعديل بواسطة مساعد مبرمج, 18 November 2006 - 04:45 PM.


#6 -=|mOOdY|=-

-=|mOOdY|=-

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

  • المجموعة الماسية
  • 1,324 مشاركة

تاريخ المشاركة 18 November 2006 - 04:57 PM

create or replace function return_status(p_stno number)
return varchar2
is
v_tot number;
begin
select (f1+f2+f3)
into v_tot
from grades
where st_no =p_stno;
if v_tot >= 50 then
return 'PASS';
else
return 'FAIL';
end if;
end;


هذا عبارة عن function تقوم بتمرير رقم الطالب وهو يقوم بحساب المجموع والمقارنة اذا كان اكبر من 50 او اصغر ويقوم بارجاع قيمة اعتمادا على المجموع

create view new_grades as
select f1,f2,f3,(f1+f2+f3) sum,return_status(st_no) status
from grades;

هذا الكود يقوم بعمل view لكي تسهل عليك عملية الاستعلام اذا كنت تريدها في تطبيقات ويب

ابني function وبعدها view ثم استعلم من ال view

select * from new_grades

سوف تحصل على النتيجة التي تريدها


ولا تنسانا من الدعاء

صورة

!!! كم أنت عبقري !!!


#7 مساعد مبرمج

مساعد مبرمج

    مشترك

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

تاريخ المشاركة 18 November 2006 - 05:00 PM

كلامك صحيح

الان تخطينا هذه المرحله لاكن بقى كيف اسحب هذا الجدول مع الفانكشن لكي اربطها بالموقع

يعني حيبقى ايه امتداد الملف

#8 -=|mOOdY|=-

-=|mOOdY|=-

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

  • المجموعة الماسية
  • 1,324 مشاركة

تاريخ المشاركة 18 November 2006 - 05:06 PM

هذا يعتمد عليك انت وعلى البيئة التي تستعملها لبرمجة النماذج

ممكن عرضها بعدة طرق باستعمال الفورمز او jsp او ال asp


هذا يعتمد عليك انت

صورة

!!! كم أنت عبقري !!!


#9 مساعد مبرمج

مساعد مبرمج

    مشترك

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

تاريخ المشاركة 18 November 2006 - 05:58 PM

انا حاليا سوف انفذها بال asp.net2

واربطها بجدول الاوركل انا الان ادرس كيفيه اعداد الجداول بالطريقه التي ذكرتها انت وبعدها سوف اربط الاوركل بالفجول ستديو

لاكن لااعرف كيفيه الربط سوف ابحث عن الطريقه واجربها

اذا لديك اي اقتراحه حول الموضوع بمكانك اخباري

وانت الله يجزنا ويجزك الجنه على عملك الصالح لخدمه اخوانك

#10 -=|mOOdY|=-

-=|mOOdY|=-

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

  • المجموعة الماسية
  • 1,324 مشاركة

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

انا بصراحة ما عندي خبرة بال asp لكن اي مساعدة بالاوراكل انا جاهز


سلااااااااااام

تم التعديل بواسطة moody_4u, 18 November 2006 - 08:21 PM.

صورة

!!! كم أنت عبقري !!!