الانتقال إلى المحتوى
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و2و3و4
وقام بصرف من الصنف 1و2و3 فقط
ولم يقم بالصرف من الصنف رقم 4
المشكلة هي انه لم يضهر في التقرير الصنف رقم 4
انا اريد ان يضهر الصف وبه الكمية المسحوبه 20 والمنصرف صفر
هل يمكن هذا وكيف

وجزاكم الله كل خير

post-15632-029148100 1297242949_thumb.jpg

بتاريخ:

اعمل ما يسمى الربط الخارجي(+)
مثال

select * from dept d, emp e
where d.deptno(+) = e,deptno

بتاريخ:

هل يمكنك و ضع السلكت الي تستعملها؟

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

هاذي جملة السلكت المكتوبة

SELECT ALL ITEMS.ITEMS_NO, ITEMS.ITEMS_NAME, SEM_ME.QUANTITY, SEM_DO.QUANTITY, SEM_UP.MAN_NO, MANDOB_UP.MAN_NAME
FROM SEM_ME, SEM_UP, SEM_DO, ITEMS, MANDOB_UP
WHERE ((SEM_ME.SEMUP_NO = SEM_UP.SEM_NO)
AND (SEM_DO.SEMUP_NO = SEM_UP.SEM_NO)
AND (SEM_ME.ITEMS_NO = ITEMS.ITEMS_NO)
AND (SEM_DO.ITEMS_NO = ITEMS.ITEMS_NO)
AND (SEM_ME.MAN_NO = MANDOB_UP.MAN_NO)
AND (SEM_UP.MAN_NO = MANDOB_UP.MAN_NO)
AND (SEM_DO.MAN_NO = MANDOB_UP.MAN_NO))

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

شو شباب وين الردود

بتاريخ:

بكل بساطة لم يظهر الصف لانك عامل ربط بين الجدولين
ولكي يظهر جميع البيانات عليك عمل outer join
وهي كالتالي

مشال بسيط بين الادارة والموظفين



select  d.dept_id,d.dept_name,e.emp_name
from dept d ,emp e
where d.dept_id=e.dept_id



هذا الربط نفس الطريقة التي استخدمتها انت في المثال السابق

وفي حالة ان موظف تم تسجيله ولم تحدد له ادارة فلن يظهر في الاستعلام او ادارة جديدة ولم يعين بها اي موظف فل تظهر هي الاخرى والحل

وضع علامة (+) في الاستعلام بالطريقة التالية

1- لاظهار جميع الموظفين حتى لو لم يكن قد عين على ادارة معينة




select  d.dept_id,d.dept_name,e.emp_name
from dept d ,emp e
where d.dept_id(+)=e.dept_id



2- اظهار الادارات التي لم يعين اي موظف عليها الى الان



select  d.dept_id,d.dept_name,e.emp_name
from dept d ,emp e
where d.dept_id=e.dept_id(+)



ملاحظة
لو الربط بين الجدولين يتضمن اكثر من عامود نستخدم علامة (+) مع جميع الاعمدة (احد الجانبين وليس الاثنين معا )

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

انا بصراحة اول مره اسمع عن الربط الخارجي
ولذلك لم افهم قصدك
فحاولت ان اعمل كما قلت لكن بدون فائده لم يضهر الصف النافص
فهل يمكن ان تعدل في الكود الموجود اعلاه
وجزاك الله كل خير

بتاريخ:

جرب كده

    SELECT ALL ITEMS.ITEMS_NO, ITEMS.ITEMS_NAME, SEM_ME.QUANTITY, SEM_DO.QUANTITY, SEM_UP.MAN_NO, MANDOB_UP.MAN_NAME 
FROM SEM_ME, SEM_UP, SEM_DO, ITEMS, MANDOB_UP 
WHERE ((SEM_ME.SEMUP_NO = SEM_UP.SEM_NO) 
AND (SEM_DO.SEMUP_NO = SEM_UP.SEM_NO) 
AND (SEM_ME.ITEMS_NO(+) = ITEMS.ITEMS_NO) 
AND (SEM_DO.ITEMS_NO(+) = ITEMS.ITEMS_NO) 
AND (SEM_ME.MAN_NO = MANDOB_UP.MAN_NO) 
AND (SEM_UP.MAN_NO = MANDOB_UP.MAN_NO) 
AND (SEM_DO.MAN_NO = MANDOB_UP.MAN_NO))
union
SELECT ALL ITEMS.ITEMS_NO, ITEMS.ITEMS_NAME, SEM_ME.QUANTITY, SEM_DO.QUANTITY, SEM_UP.MAN_NO, MANDOB_UP.MAN_NAME 
FROM SEM_ME, SEM_UP, SEM_DO, ITEMS, MANDOB_UP 
WHERE ((SEM_ME.SEMUP_NO = SEM_UP.SEM_NO) 
AND (SEM_DO.SEMUP_NO = SEM_UP.SEM_NO) 
AND (SEM_ME.ITEMS_NO = ITEMS.ITEMS_NO)(+) 
AND (SEM_DO.ITEMS_NO = ITEMS.ITEMS_NO)(+)
AND (SEM_ME.MAN_NO = MANDOB_UP.MAN_NO) 
AND (SEM_UP.MAN_NO = MANDOB_UP.MAN_NO) 
AND (SEM_DO.MAN_NO = MANDOB_UP.MAN_NO))    





موفق

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

كل الشكر لك اخي
لكن ما بني على باطل فهو باطل
يعني لازم اتعلم الربط هذا

لو تقدر تدلني على رابط اتعلم فيه الربط

يكون جزاك الله كل خير

ومشكور

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

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

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

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

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

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

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

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.