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

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

صورة
- - - - -

ما هي الفائدة من Hierarchical Queries ؟؟؟؟؟؟؟


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

#1 omar-alreyati

omar-alreyati

    عضو مميز

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

تاريخ المشاركة 14 December 2005 - 11:19 AM

الاخوة الاعزاء:

ارجو منكم شرح ما هي الفائدة من Hierarchical Queries مع العلم انني ارعف استخدامه لكن لا اعرف ما هي الفائدة والهدف من استخدامه؟؟؟؟؟؟؟



وشكراً للتعاون الرائع .

بالله عليكم لا تنسوني من دعاءكم الصالح
لا تنسوا أهل غزة والعراق والمجاهدين من دعاءكم

#2 Osama Soliman

Osama Soliman

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

  • المجموعة الماسية
  • 1,611 مشاركة
  • الاسم الأول:Osama
  • اسم العائلة:Soliman
  • البـلـد: Country Flag
  • المنصب الحالي:Oracle Technical Consultant - Asfour Crystal International

تاريخ المشاركة 06 January 2006 - 02:41 PM

الاخ الفاضل / omar-alreyati
السلام عليكم ورحمة الله وبركاته
Hierarchical Queries هى استعلام تتم على جدول واحد يوجد به عمودين احدهما مفتاح اساسى للاخر
مثال :
جدول الموظفين به حقل manager_id يتم ادخال رقم المدير به هذا الرقم يشير الى عمود employee_id الموجود بالطبع فى نفس الجدول

وهذا مثال لبيانات الجدول

100  King   
101  Kochhar  100 
102  De Haan  100 
103  Hunold  102 
104  Ernst  103 
105  Austin  103 
106  Pataballa  103 
107  Lorentz  103 
108  Greenberg  101



نجد فى هذه العينة من البيانات ان king هو مدير كلاً من Kochhar وDe Hann وKochhar هو مدير Hunold وهكذا

والغرض من الاستعلام الهيكلى Hierarchical Queries هو استخراج البيانات فى صورة هرمية حيث تبين تسلسل العلاقة بين الموظف والمدير
مثال :

SELECT employee_id, last_name, job_id, manager_id
FROM employees
START WITH employee_id = 101
CONNECT BY PRIOR employee_id = manager_id

الجملة السابقة تعمل على عرض رقم الموظف والاسم والوظيفة والمدير لجميع الافراد التى تعمل تحت ادارة الموظف رقم 101 اى تعرض السلسلة الوظيفية لهؤلاء المظفين.

هى جملة SELECT عادية ويزيد عليها
- CONNECT BY وفي هذا المقطع يتم كتابة حقلى الربط (المفتاح الاساسى والمفتاح التابع له)
ويتم اضافة كلمة PRIOR وهى تحديد اتجاة الاستعلام بمعنى اذا تم اضافتها فى ناحية المفتاح الاساسى (فى المثال هو employee_id) فان الاستعلام يعرض كل موظف وجميع من يعمل تحت ادارته (وبالطبع كل من يعمل تحت ادارة موظفيه)
اما اذا تم اضافة كلمة PRIOR ناحية المفتاح الابن (فى المثال manager_id) فان الاستعلام يعرض كل موظف ورؤسائه حتى يصل الى اعلى مدير بالشركة.

هذا النوع من الجدول (الذي يجد فيه علاقة بين حقلين) يوجد على عدة تطبيقات منها : جدول اكواد الحسابات، جدول انساب العائلة ، جدول السلاسلات (فى برامج المزارع ) وغيرها

وللمزيد عن التفاصيل يمكنك اخ عمر الرجوع الى :

Introduction to Oracle9i: SQL, Volume 2,Chapter 19 Hierarchical Retrieval, page 223 : 240

مع تحياتى
اسامه سليمان
القاهرة
  • محمد طلعت معجب بهذا

وقل رب زدنى علماً
Osama M. Soliman
Oracle Certified Professional
Oracle Technical Consultant

 Asfour Crystal International
Cairo - Egypt
Osama.Soliman@hotmail.com
Osama.Soliman@asfourcystal.com


#3 medo_1132001

medo_1132001

    عضو

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

تاريخ المشاركة 29 January 2006 - 03:30 PM

اكثر من رائع

#4 m_almarei

m_almarei

    عضو نشط

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

تاريخ المشاركة 31 January 2006 - 05:27 PM

جزاك الله خيرا اخي اسامة
قال تعالى: (وفوق كل ذي علم عليم)

قال تعالى: (وقل رب زدني علما)

--------------------------------------------------------------------------------------------
m_almarei@hotmail.com