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

سؤال في عمل جملة sql

Featured Replies

بتاريخ:

عندما يكون عندي جدولين الاول فيها بيانات الموظفين والاخر بيانات رواتب الموظفين بحيث يحتوي الاول على رقم الموظف والثاني على رقم الموظف(مفتاح اجنبي من الجدول الاول) وتاريخ الحصول على الراتب.
السؤال كيف استطيع اخراج جميع الموظفين من الجدول الاول مع تاريخ الحصول على الراتب مع العلم ان بعض الموظفين غير موجود في جدول رواتب الموظفين لكن اريده ان يخرج بقيمة لا شيء(يعني اذا كان مسجل 3 موظفين في الجدول و2 فقط منهم مسجل في الجدول الثاني اريد ان يخرج لي ثلاث موظفين المسجلين وغير المسجلين في الجدول الثاني وتكون قيمة الغير مسجلين لا شيء).
مع الشكر الجزيل.

بتاريخ:

يمكن اخى استخدام Outer Join
وهو يعنى عرض البيانات من احدى الجدول بالكامل حتى لو تكن لها مقابل (مفتاح) فى الجدول الاخر.

بفرض ان اسم الجدول الاول Employees وبه بيانات الموظفين
employee_id, name, hire_date
والجدول الثانى به تفاصيل الراتب واسمه Emp_sal وبه
employee_id , pay_date, salary

يمكن كتابة الجملة كما يلى

Select e.employee_id, e.name, s.salary, s.pay_date
from employees e, emp_sal s
where e.employee_id  = s.employee_id(+);



فاضافة (+) فى جانب جدول المرتبات يعنى ظهور جيمع السجلات من الجدول على الجانب الاخر (يعنى الموظفين)

مع تحياتى
اسامه سليمان
القاهرة

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

شكرا اخي على الرد لكن ايضا اريد بقية جواب السؤال وهو عرض الناتج بشرط ان يكون الراتب اخر راتب حصل عليه الموظف في تاريخ معين وان يضع صفر في الراتب الاساسي ان لم يكن له سجل في جدول رواتب الموظفين؟

بتاريخ:

اخى الكريم /almujtaba
لوضع صفر مكان الموظف الغير مسجل بجدول الرواتب فى تاريخ معين يمكن استخدام دالة NVL
والتى تعمل على اعادة قيمة معينة كبديل للقيم الفارغة Nulls

وبالتالى تصبح الجملة

Select e.employee_id, e.name, NVL(s.salary,0), s.pay_date
from employees e, emp_sal s
where e.employee_id = s.employee_id(+);



مع تحياتى
اسامه سليمان
القاهرة

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

شكرا اسامة على تفاعلك ووفقك الله لما يحب ويرضاه

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

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

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

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

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

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.