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

Sub Quary

Featured Replies

بتاريخ:

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

انا الحمد لله ماشي في الكورس كويس

بس في حاجات واقعة مني وشم عارف افهمها

قلت ادخل اشوف المهندسين الي علي حق انا متاكد انهم هيقدورا يساعدوني

انا واقف عند Sub Quary

ومش فاهمها

المهندس كان اعطانا مثال ومش فاهمه المثال اهوت ولو في حد عنده مثال تاني يبقي احسن

select * from employees
where salary>(select*from employees
where emp_id=200)

وقال كمان حاجة عن

single raw
multi raw

ولم يشرحهم

ارجو المساعدة

تحياتي للجميع

بتاريخ:

هذه الجملة في هذه الحالة ستعطيك رسالة خطأ محتواها:
too many values

لأن الشرط في الجزء الثاني من الاستعلام يقوم باستدعاء جميع القيم الخاصة بالجدول ولكن مقارنة مع الجملة الشرطية فانك تستعلم عن طريق الراتب
وبالتالي يجب ان تكون كالتالي:

select * from employees where salary>(select salary from employees where emp_id=200);



ولكن ايضا هذه الجملة ستعطيك رسالة خطأ الا وهي:
single-row subquery returns more than one row

وهذا الخطأ معناه بأن الجملة الثانية ستقوم بارجاع اكثر من راتب لكل موظف وهذا خطأ

ولكن الجملة لتكون صحيحة فيجب ان تكون كالتالي:

select * from employees where salary in (select salary from employees where emp_id=200);




ارجو ان يكون توضيحي صحيحا وان لم يكن كذلك فارجو من الاخوة تصحيحي للافادة

وشكرا

بتاريخ:

السلام عليكم
أخي الكريم
rose_4pretty
للتوضيح فقط
الجملة الاولي الاي حضرتك كتبتها صحية ولا خطأ فيها لانك هتخرج من subquery نتيجة واحدة وبالتالي يمكنك المقارنة بمعامل <

بتاريخ:
السلام عليكم
أخي الكريم
rose_4pretty
للتوضيح فقط
الجملة الاولي الاي حضرتك كتبتها صحية ولا خطأ فيها لانك هتخرج من subquery نتيجة واحدة وبالتالي يمكنك المقارنة بمعامل <



شكرا اخي مصطفى

لقد قمت بتجربتها مرة اخرى وكانت صحيحة

اسف على الخطأ وشكرا لك للتوضيح

تم تعديل بواسطة rose_4_pretty

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

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

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

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

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

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.