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

بتاريخ:

إخواني الكرام ، تحية طيبة وبعد ،


قمت بكتابة مجموعة من جمل الـ SQL التالية ودائماً تقوم بإرجاع رسالة تفيد بعدم إرتجاع
أي سجـل مـن السجلات ، خصوصاً عنــد التعامل مع RowNum ، فهل هناك خطأ غير
منطقي قمت بإدراجة . مـــع العلم أن هذه الأكواد أخذتها من هذا المنتدي الكريم ، وجمل
وأعضاء المنتدي أكدو لي ولأصدقائي بالمنتدي بأنه يخرج معلومات ، الإستعلامات
هي :

1- إسترجاع مجموعة معينة من السجلات حسب رقم السجل :

Select * From Emp Where RowNum Between 20 And 70;
Select * From Emp Where RowNum >= 1000 And RowNum <= 1900;


2- إسترجاع سجل معين حسب ترتيب السجل :

Select *
From Emp
Where RowNum = 17;



فتقوم بإرجاع رسالة ( لم يتم تحديد صفوف )

ولكن عند كتابة الكود التالي قام بإرجاء مجموعة صفوف عادية :

Select *
From Emp
Where RowNum <= 20;



ما هو حل هذه المشكلة ؟

بتاريخ:

select rownum,id from(
select e.id id
from scott.employee e
order by 1)
where rownum<5
لا سترجاع اول خمس موظفين

بتاريخ:

select rownum,id from(
select e.id id
from scott.employee e
order by 1)
where rownum<5
لا سترجاع اول خمس موظفين


Hany>select rownum,id from(
 2  select e.id id
 3  from scott.employee e
 4  order by 1)
 5  where rownum<5;
from scott.employee e
	   *
ERROR at line 3:
ORA-00942: table or view does not exist

بتاريخ:

إخواني الكرام ، تحية طيبة وبعد ،


قمت بكتابة مجموعة من جمل الـ SQL التالية ودائماً تقوم بإرجاع رسالة تفيد بعدم إرتجاع
أي سجـل مـن السجلات ، خصوصاً عنــد التعامل مع RowNum ، فهل هناك خطأ غير
منطقي قمت بإدراجة . مـــع العلم أن هذه الأكواد أخذتها من هذا المنتدي الكريم ، وجمل
وأعضاء المنتدي أكدو لي ولأصدقائي بالمنتدي بأنه يخرج معلومات ، الإستعلامات
هي :

1- إسترجاع مجموعة معينة من السجلات حسب رقم السجل :

Select * From Emp Where RowNum Between 20 And 70;
Select * From Emp Where RowNum >= 1000 And RowNum <= 1900;


2- إسترجاع سجل معين حسب ترتيب السجل :

Select *
From Emp
Where RowNum = 17;



فتقوم بإرجاع رسالة ( لم يتم تحديد صفوف )

ولكن عند كتابة الكود التالي قام بإرجاء مجموعة صفوف عادية :

Select *
From Emp
Where RowNum <= 20;



ما هو حل هذه المشكلة ؟


أخى الكريم MMA

التوضيح لمشكلتك التى تحدث لك هى فى هذه الوصلة :-

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

أخي hanyfreedom الكريم

أشكرك كثيراً علي الرد والإهتمام


أنا تعلمت Oracle من هذا المنتدي الكريم ، وهذه الطريقة بالزات قد أخذتها من إحدي مشاركاتك بالمنتدي ، فأشكرك كثيراً علي هذه المعلومة القيمة.


ولكن سؤالي واضح

الإستعلام لا يعرض لي أي نتائج ، رغم أن هذا الإستعلام قد أخذتة من هذا المنتدي ومن إحدي مشاركاتك



وشكراً كثيراُ علي ردك هذا

بتاريخ:

خلاص انا لاقيتلك الحل ......... هذا الكود سيعرض على سبيل المثال الصف ال سابع لجدول Departments

select * From
(select rownum Row_N,departments.* from departments)
where Row_n=7;




لكن اخى انا صراحتاً لا أتذكر انى قمت بعمل هذا الكود من قبل - او عمل ما يشبه - و على اى حال أتمنى ان تكون المعلومة وصلت لك بسهولة .

و مع تمنياتى لك بالتوفيق دائماً

بتاريخ:

بسم الله الرحمن الرحيم

بصفة عامة الكود كالتالى
[/code]
select rownum,last_name
from( select salary
from employees
order by salary)
where rownum<10



الحقيقة نفس المشكلة تقابلنى عندما اطلب صف بعينه مثلا خامس أعلى مرتب و كان هناك صفين لهما نفس المرتب ونفس الترتيب "الخامس" فى هذه الحالة لا يرجع لى أى بيانات و لا أعرف السبب !!!!!!!!!!!!!




متأسف الكود كالتالى
select rownum,last_name
from( select salary
from employees
order by salary desc)
where rownum=5
بتاريخ:

أخى العزيز Masrico

لكى تحضر بيانات الصف الخامس من جدول employees قم بكتابة التالى :-


select*from
(select rownum RN , employees.* from employees)
where RN = 5;



و لكن لكى تأتى بجميع بيانات الموظف الذى يملك خامس أعلى مرتب ..... فهذه لها كود أنا لا أعرفه ، ولكن أول ما هعرفه هحطه هنا ... أن شاء الله .

و بالتوفيق

بتاريخ:

بسم الله الرحمن الرحيم

بصفة عامة الكود كالتالى
[/code]
select rownum,last_name
from( select salary
from employees
order by salary)
where rownum<10


الحقيقة نفس المشكلة تقابلنى عندما اطلب صف بعينه مثلا خامس أعلى مرتب و كان هناك صفين لهما نفس المرتب ونفس الترتيب "الخامس" فى هذه الحالة لا يرجع لى أى بيانات و لا أعرف السبب !!!!!!!!!!!!!




متأسف الكود كالتالى
select rownum,last_name
from( select salary
from employees
order by salary desc)
where rownum=5[/size]


[size=5]أخى بالنسبة لما تريده فهو على هذا الرابط ، وهو الحل اللى انت عاوزه بس باستخدام دالة فى السكويل مش منتشره أوى انا عن نفسى مش عارفها على اى حال هذا هو الرابط ادخل عليه و شوف الحل :-[/size]

[color=#CC6600][size=6]من هنا[/size][/color]
بتاريخ:

إخواني الكرام ، تحية طيبة وبعد ،


قمت بكتابة مجموعة من جمل الـ SQL التالية ودائماً تقوم بإرجاع رسالة تفيد بعدم إرتجاع
أي سجـل مـن السجلات ، خصوصاً عنــد التعامل مع RowNum ، فهل هناك خطأ غير
منطقي قمت بإدراجة . مـــع العلم أن هذه الأكواد أخذتها من هذا المنتدي الكريم ، وجمل
وأعضاء المنتدي أكدو لي ولأصدقائي بالمنتدي بأنه يخرج معلومات ، الإستعلامات
هي :

1- إسترجاع مجموعة معينة من السجلات حسب رقم السجل :

Select * From Emp Where RowNum Between 20 And 70;
Select * From Emp Where RowNum >= 1000 And RowNum <= 1900;


2- إسترجاع سجل معين حسب ترتيب السجل :

Select *
From Emp
Where RowNum = 17;



فتقوم بإرجاع رسالة ( لم يتم تحديد صفوف )

ولكن عند كتابة الكود التالي قام بإرجاء مجموعة صفوف عادية :

Select *
From Emp
Where RowNum <= 20;



ما هو حل هذه المشكلة ؟



السلام عليكم
المشكلة ببساطة انه مفيش عدد كافى من الصفوف لعض نتائج
لو قللت العدد بتاع الشرط هيعرض نتائج
ذى اخر مثال انت عمله :(

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

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

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

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

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

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.