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

هل يمكن لتعليمة (SELECT) توليد صفوف ليست موجودة؟

Featured Replies

بتاريخ:

مساء الخير...

كما هو معلوم يمكن توليد أعمدة غير موجودة بواسطة تعليمة SELECT، فمثلاًً لنفترض أني أملك جدولاً بالإسم (PERSONS)، يحتوي على الأعمدة: المعرف (PersonId)، الإسم (PersonName)، الدخل الشهري (EarnAMonth)، ويحتوي على الصفوف التالية:
1 تعيس الحظ 100
2 سعيد الحظ 10000
4 فاقد الحظ 10
8 معاند الحظ 150
فإنه يمكننا إستخدام تعليمة SELECT، لتولد عمود جديد يدعى EarnAYear (الدخل السنوي).

SELECT PersonId, PersonName, EarnAMonth, EarnAMonth * 12 "EarnAYear";


السؤال أو المشكلة:
أنني أريد كتابة تعليمة SELECT، يكون ناتجها الصفوف التالية.
3
5
6
7
أي أرقام المعرفات الغير موجودة في الجدول، والطريقة التي أريد حل بها هذه المشكلة، هي كتابة تعليمة SELECT أولاً لتوليد الصفوف التالي:
1
2
3
4
5
6
7
8
وذلك -مثلاً- باستخدام جدول يتكون من صف واحد، كالجدول DUAL. ثم إجراء عملية طرح بين الجدول المكون والجدول الأساسي (طبعا لن يكون الجدول الأساسي كاملاً ولكن باختيار العمود الأول منه فقط).

هل يمكن ذلك؟؟؟؟

ولكم الشكر....

بتاريخ:

بصراحة مافهمت ،، ممكن توضع شوي.

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

بإختصار شديد، هل يمكن كتابة تعليمة SELECT، يكون ناتجها عبارة صفوف أرقام (مثلاً من 1 إلى 10)؟
هل يمكن إستخدام الجدول DUAL، لإرجاع صفوف (وليس أعمدة)، من الرقم 1 إلى الرقم 10؟

بتاريخ:

الاخ الكريم
ممكن عمل جدول يحتوي على الارقام من 1 الى 10 مثلا ويحتوي على الوصف
ثم تعمل جملة select من الجدولين


create table other_table (serno number(4));


SELECT PersonId, PersonName, EarnAMonth, EarnAMonth * 12 "EarnAYear" from personal union
SELECT serno PersonId, '2' PersonName, '3' EarnAMonth,
'4' EarnAMonth * 12 "EarnAYear"  from Other_Table



هعذا اقتراح طبعا

بتاريخ:

"ان للمتقين مفازا"

السلام عليكم
من الممكن توليد صفوف بجملة select ولكن تحتاج إلى جملة طويلة
ففى حالتك مثلا من الممكن ان تولد صفوف مستخدما union مثل

SELECT 1 A FROM DUAL
UNION
SELECT 2 A FROM DUAL
UNION
SELECT 3 A FROM DUAL
UNION
SELECT 4 A FROM DUAL
UNION
SELECT 5 A FROM DUAL
.
.
.
وهكذا
مع العلم طبعا ان A هو مجرد ALIAS لاسم الحقل

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

بتاريخ:

الأخ الكريم :

جرب إستخدام هذا الأمر :


SELECT ٌROWNUM , PersonId, PersonName, EarnAMonth, EarnAMonth * 12 "EarnAYear";






العمود الوهمى ROWNUM يمكن إضافته إلى أى كود لإضافة الترقيم للنتيجه المطلوبه.

أرجو أن يكون هذا ما كنت تبحث عنه.


sherif Hamed Fahmy
Oracle Training Supervisor
Unlimited Technology Training Center
Knowledge Village - Dubai
[email protected]

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

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

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

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

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

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.