الانتقال إلى المحتوى
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.

دوال ؟؟؟

Featured Replies

بتاريخ:

السلام عليكم
بماذا تستخدم هذ الدوال :

1- CONNECT BY
2- PRIOR



وياريت ارفاق مثال بسيط على سكيمة SCOTT.
وشكرا جزيلا...

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

بتاريخ:

السلام عليكم
اولا
connect by prior
دى بنستخدمها لما نكون عاوزين نعرف المديرين لموظف محدد يعنى بيجيب البيانات فى شكل هرمى
وليها اشكال مختلفه
انا هقولك مثال مثلااا على اليوزر hr
select last_name,employee_id,manager_id
from employees
start with employee_id=100
connect by prior employee_id=manager_id

فى المثال ده
رقم الموظف 100 المدير بتاعه ب null واحنا عاملين كونكت باى باريور رقم الموظف بيساوى رقم المدير

يبأه هنجيب كل الموظفين الى رقم المديرين بتوعهم ب100 هيطلع مثلا الموظف 201 المدير بتاعه ب100 بعدين هيدور على المدير الى رقمه 201 هيطلع رقم الموظف ب202 ويكون رقم مديره ب201 بعدين يشوف المدير الى رقمه 202 ويظهر قصاده رقم الموظف بتاعه وهياخدها بشكل هرمى كدده وطبعا قبل كل ده لازم يظهر الموظف 100 والدير بتاعه بnull

ولو عملنا الكود كده
select last_name,employee_id,manager_id
from employees
start with employee_id=100
connect by prior manager_id=employee_id
هنا هيظهر الموظفين الى ليهم نفس رقم المدير بتاع الموظف 100
يعنى الموظفين الى بnull وبرده قبل كل ده بيظهر الموظف رقم 100 والمدير بnull

دا تطبيق بسيط على connect by prior
والله اعلم
ياريت تكون فهمت حاجه

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

السلام عليكم
أخي العزيز..
قمت بكتابة المثال التالي:

select ename,empno,mgr
from emp
start with empno=7788
connect by prior empno=mgr;



وظهرت هذه النتائج :

ENAME EMPNO MGR

scott 7788 7566

ADAMS 7876 7788



ما الذي حدث بالزبط ؟؟؟

وعند كتابة الجملة التالية :

select ename,empno,mgr
from emp
start with empno=7788
connect by prior mgr=empno;



وظهرت هذه النتائج :

ENAME EMPNO MGR

scott 7788 7566
JONES 7566 7839
KING 7839



ممكن توضيح ؟؟

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

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

UP

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

بتاريخ:

اولا السلام عليكم

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

انا هقولك من الاول على الامثله بتاعتك
select ename,empno,mgr
from emp
start with empno=7788
connect by prior empno=mgr;

هوا اولا بيبتدى يحسب انه بدأ من اول الموظف رقم 7788 علشان عملنا استارت وز فهيكون اول حاجه تظهر فى الناتج وهجيبله رقم المدير واسمه الاخير زى ماحنا عاملين فى جملة select
scott 7788 7566 وبعدين يبتدى يترجم الجمله بتاعت

connect by prior empno=mgr
ودى معناها
الموظف الى رقمه 7788 مدير على مين يعنى هيبأه هوا الاب
هنلاقيه موجود فى خانة المدير لما يكون رقم الموظف ب7876 وبعدين نشوف الرقم 7876 موجود فى خانة المدير لما يكون رقم الموظف بكام هنلاقى ان مفيش مدير رقمه 7876 يبأه نقف لحد الناتج ده

ADAMS 7876 7788

تانيا المثال التانى
select ename,empno,mgr
from emp
start with empno=7788
connect by prior mgr=empno;

هوا اولا بيبتدى يحسب انه بدأ من اول الموظف رقم 7788 علشان عملنا استارت وز فهيكون اول حاجه تظهر فى الناتج وهجيبله رقم المدير واسمه الاخير زى ماحنا عاملين فى جملة select
scott 7788 7566

ثانيا هيبتدى يترجم الجمله بتاعت connect by prior mgr=empno;

ودى معناها الموظف الى رقمه 7788 مين مديرينه وليس مدير على مين

يبأه عرفنا اول مدير ليه الى رقمه 7566 وبعدين نعتبر 7566 بأه ابن يعنى موظف و نشوف مين المدير بتاعه هيبأه رقمه 7839
JONES 7566 7839
بعدين نعتبر 7839 موظف ونشوف مين المدير بتاعه هنلاقى مالوش مدير يبأه نقف لحد كده
KING 7839



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

ولو عاوز شرح على مثال تانى انا موجود

ويارب يكون الشرح واضح

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

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

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

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

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

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

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

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.