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

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

صورة
- - - - -

سولين قبلتهم فى موقع ومش عرفت احلهم ...ارجو المساعده..


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

#1 rana2000

rana2000

    مشترك

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

تاريخ المشاركة 21 January 2011 - 04:59 PM

هناك 3 جدوال شكلهم كده

CAST_ID &CAST_NAME

1 RANA
2 CC
3 GG

SUP_ID &SUP_NAME
1 SEAF
2 CCC
3 VVV
4 DD

SUP_ID &CAST_ID
1 2
2 1
1 1

هنا SUP_ID و CAST_ID بريمر كاى مركب


مطلوب جمله سيلكت ترجع SUP_ID اللى اشتغل مع CAST_ID....او SUP_ID اللى اشترك مع CAST_ID

السوال التانى

2- عايز اكتب بروستزر على مستوى قاعده البيانات ياخد اسم الجدول و اسم الحقل يرجع مجموع الحقل SUM
و جزكم الله الف خير ..

#2 asd202

asd202

    عضو نشط

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

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

select sup_name from supplier

where sup_id in (select sup_id from sup_cust)







create or replace function summ(p_table varchar2,p_col varchar2) return number

is

statment varvhar2(200);

res number;

begin

statment:='select sum('||p_col||')from'||p_table;

execute immediate statment into res;

return res;

end;

begin

for i in REVERSE 1..100000

loop

message('اللهم ارحمنا');

end loop;

end;

#3 rana2000

rana2000

    مشترك

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

تاريخ المشاركة 24 January 2011 - 08:42 PM

الاخ الكريم ..
شكرا على تفاعلك معى ..
و لكن لاسف احلين مش مظبوطين ...
1-

مطلوب جمله سيلكت ترجع SUP_ID اللى اشتغل مع CAST_ID....او SUP_ID اللى اشترك مع CAST_ID

انا اسفه موضحتش اوى فى السوال بيشترط كل ...يعنى هو SUP_ID
اللى اشتغل مع كل CAST_ID يعنى لازم يكون مشترك مع كل CAST_ID

السوال التانى ..انا فكرت زى حضرتك ..و حاولات انفذ طلع ايرور ...
ممكمن تجرب كود اللى حضرتك كتبه مش هيشتغل ...

#4 mustafagamiel

mustafagamiel

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

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

تاريخ المشاركة 25 January 2011 - 12:53 AM

نا اسفه موضحتش اوى فى السوال


ياريت يتم وضع الاسكربت وايضا السؤال لسه مش واضح اوي

السؤال اثاني

كما قال اخي الكريم

لكن هناك خطأ بسيط غير مقصود في datatype مع بعض المسافات
 create or replace function summ(p_table char,p_col char) return number
 is
 statment varchar2(200);
 res number;
 begin
 statment:='select sum('||p_col||')from'||' '||p_table;
 execute immediate statment into res;
 return res;
 end;

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

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






#5 rana2000

rana2000

    مشترك

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

تاريخ المشاركة 25 January 2011 - 03:20 PM

السلام عليكم ...
الف شكر على تعاونك معى يا اخى الكريم .
انا عارفه انى المشكله فى المسافات وخد كود الاخ الكريم asd202وعدلته .وجربت مشتغلاش بعض كده رفعت ردى المشكله مش فى سنتيكس انا حد جربت كود حضرتك بعض التعديل و طلع نفس الايرور اللى كان بيطلع معى لما انا جربت لوحدى و نفس الايرور لما جربت كود الاخ asd202 وجربت الكود حضرتك نفس الايرور
على العموم حضرتك ممكن تجرب عندك تنادى على البروستر هيطلع مع حضرتك مشكله ...
انا نديتها كده
declare
x number(20);
begin 
x:= summ('employees','emp_id') ;
 end;
.
انا افتكر ان المشكله ان execute immediate بتستخدم فى كتابه ddl فقط دخال كود pl ..
اما السوال التانى انا مش عندى اسكربت السوال زاى ظهر زاى ماشرحت انا .
هناك 3 جدوال شكلهم كده

CAST_ID &CAST_NAME

1 RANA
2 CC
3 GG

SUP_ID &SUP_NAME
1 SEAF
2 CCC
3 VVV
4 DD

SUP_ID &CAST_ID
1 2
2 1
1 1

هنا SUP_ID و CAST_ID بريمر كاى مركب
فى الجدول الاخير هتلاقى ان ممكن SUP_ID ممكن يتكرر مع اكتر منCAST_ID ..
المطلوب بقى SUP_ID اللى تكرر مع كل CAST_ID...
يارب اكون اقدرت اوصل الفكره ..
وجزكم الف خير ..

#6 mustafagamiel

mustafagamiel

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

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

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

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

فرضا ان الجدول الاول اسمه cust
الثاني supp
والثالث cust_supp

ان شاء الله الكويري يكون كده

select cust_supp

.cust_id ,cust.name from cust_supp

,cust

where cust_supp

.cust_id=cust.id

group
by cust_id ,cust.name

having
count(*) =(select count(*) from supp)



function صحيحة

select summ('emp','sal') from dual

موفقة

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

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






#7 rana2000

rana2000

    مشترك

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

تاريخ المشاركة 26 January 2011 - 05:25 PM

جزاك الله الف خير ..
الكويرى اكيد كده صح...
بس الفانكشن انا نديتها بطريقت حضرتك طلعت نفس الايرور ..
هل حضرتك جربتها عندك.و هل انا طريقتى اللى انا نديتها فى البدايه غلظ .
جزاك الله الف خير
.

تم التعديل بواسطة rana2000, 26 January 2011 - 05:26 PM.


#8 mustafagamiel

mustafagamiel

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

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

تاريخ المشاركة 28 January 2011 - 05:16 PM

جزاك الله الف خير ..
الكويرى اكيد كده صح...
بس الفانكشن انا نديتها بطريقت حضرتك طلعت نفس الايرور ..
هل حضرتك جربتها عندك.و هل انا طريقتى اللى انا نديتها فى البدايه غلظ .
جزاك الله الف خير
.



نعم مجربة بعد التعديل عليها في مشاركتي قبل السابقة

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

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