إنتقال للمحتوى

  • تسجيل الدخول عبر الفيس بوك تسجيل الدخول عبر تويتر Log In with LinkedIn Log In with Google      تسجيل دخول    
  • إنشاء حساب

صورة
- - - - -

اريد جمله استعلام تاتى باول صف تم ادخاله


11 رد (ردود) على هذا الموضوع

#1 amr fawzy

amr fawzy

    مشترك

  • الأعضــاء
  • 132 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 29 January 2008 - 03:25 PM

السلام عليكم ورحمه الله وبركاته
انا اريد عمل جمل استعلام تاتى باول صف تم تخزينه فى الجدول .انا كان عندى فكره وهى عمل حقل فى الجدول يكون بيزيد
1 مع كل صف يتم تخزينه واقوم بالاستعلام بدلاله هذا الحقل ولكن المشكله ان الجدول اللى انا عاوز اعمل عليه الكلام ده
فيه بيانات وانا مش عارف اى صف تم تخزينه اولا

#2 Oracle9iDeveloper

Oracle9iDeveloper

    مشترك

  • الأعضــاء
  • 69 مشاركة

تاريخ المشاركة 29 January 2008 - 03:36 PM

الأخ العزيز ...
داخل اوراكل كل صف (او سجل) من البيانات يتم دمج قيمة تعرفه تلقائياً هي ROWID وهي عبارة عن حقل مخفي يحتوي على قيمة حرفية، لا يمكن ان تتكرر مع اي صف داخل الجدول او في أي صف تابع لجدول اخر داخل قاعدة البيانات.
ومن خلالها يمكنك ايجاد اول صف تم ادخاله او تخزينه في الجدول :

SELECT * FROM MYTABLE WHERE ROWID = (SELECT MIN(ROWID) FROM MYTABLE);

Oracle Developoer
. oabunawas@yahoo.com .
صورة

#3 kamal480

kamal480

    مشترك

  • الأعضــاء
  • 118 مشاركة
  • الاهتمامات:oracle database

تاريخ المشاركة 31 January 2008 - 06:49 AM

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

select name,job_id,salary from (select name,job_id,salary order by creation_date asc)
where rownum=1
.... علمت ان رزقى لا ياكلة غير فاطمئن قلبى
..... لو ان الفقر رجلا لقتلته (عمر بن الخطاب رضى الله عنه)

#4 mohd_sayed_mohd

mohd_sayed_mohd

    عضو نشط

  • الأعضــاء
  • 247 مشاركة
  • الاسم الأول:Mohamed
  • اسم العائلة:Elsayed
  • البـلـد: Country Flag

تاريخ المشاركة 31 January 2008 - 03:23 PM

السلام عليكم ورحمة الله وبركاته
هل creation_date هي كلمة محجوزة من قبل اوراكل أي تأتي بتاريخ انشاء السجل أنا قرأت الموضوع ولم أجرب ولكن على حد علمى أن creation_date ليست كلمة محجوزة واعتقد انه عبارة عن حقل أو عمود يتم تخزين تاريخ ادخال السجل من قبل المبرمج واعتقد ان النتيجة في هذه الحالة ربما لا تكون دقيقة اذا تم ادخال سجلان في نفس التوقيت عن طريق اكثر من مستخدم على شبكة مثلا ، سينتج لنا صف واحد ولكن ليس بالتأكيد هو من تم ادخاله أولا لذا أرى طريقة ROWID أفضل
لا إله إلا الله ، محمد رسول الله

#5 lo2lo2a

lo2lo2a

    عضو

  • الأعضــاء
  • 46 مشاركة

تاريخ المشاركة 02 February 2008 - 09:17 AM

السلام عليكم ورحمة الله وبركاته
انا مش فاهمه طريقة البشمهندس كمال
بس انا شايفه ان طريقة الROWID حلوه ومنطقيه وسهله
بس كان عندي سؤال في الquery
ليه استخدمنا min
وجزاك الله خيرا
نعيب زماننا والعيب فينا وما لزماننا عيب سوانا

#6 ashsam

ashsam

    مشترك

  • الأعضــاء
  • 57 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 02 February 2008 - 12:38 PM

السلام عليكم ورحمة الله وبركاته
انا مش فاهمه طريقة البشمهندس كمال
بس انا شايفه ان طريقة الROWID حلوه ومنطقيه وسهله
بس كان عندي سؤال في الquery
ليه استخدمنا min
وجزاك الله خيرا

====================================================

اخي العزيز ... بالنسبه لسؤالك المطروح سابقا عن استخدام ال
MIN OR MINIMUM
كما تعلم ان ROWID هو عداد ضمني يبدأ من الرقم واحد الى ما شاء الله .... بالتالي نحن نريد اول سطر ادخل فنبحث عن اقل قيمه لل ROWID

#7 bogii

bogii

    عضو

  • الأعضــاء
  • 13 مشاركة

تاريخ المشاركة 03 February 2008 - 10:38 AM

سلام عليكم

أري ان استخدام
Min(rowid)s
لن يأتي بنتائج صحيحه لان rowid هوا مميز فقط للسجل وموجود كحروف وليس كرقم واستخدام min في هذه الحاله سيأتي بنتائج عشوائيه

اما rownum فلن يفيد ايضا لأنه مجرد مسلسل لكل سجل وليس علاقه بتاريخ الانشاء

اري انه اذا كان الجدول لا يجتوي علي رقم مسلسل مع تسجيل كل سجل فلن يمكن معرفة ترتيب السجلات حسب ترتيب إدخالها في الجدول

#8 amr fawzy

amr fawzy

    مشترك

  • الأعضــاء
  • 132 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 03 February 2008 - 05:08 PM

السلام عليكم ورحمه الله وبركاته
جزاكم الله خير ياجماعه على الاجابات ولكنى احب ان اوضح مشكلتى اكثر المشكله باختصار انى عندى برنامج vc فى الشركه
اللى انا شغال فيها فى البرنامج كود بيعمل إضافه فى جدول بالاوراكل وعند الدخول على اوراكل ارى البيانات المسجله فى الجدول
غير مرتبه بنفس الترتيب الذى تم به إدخال البيانات من البرنامج . طلبى الان عمل استعلام عن اول صف تم تسجيله فى الجدول وليس اول صف يتم عرضه عند عمل الاستعلام وذللك لن يتم ابد باستخدام rownum or rowid .
وان اظن ان الموضوع ممكن يتحل باستخدام data dictionary فى الاتيان بالصف اللى وقت إدخاله اصغر وقت وجزاكم الله خير

#9 amr fawzy

amr fawzy

    مشترك

  • الأعضــاء
  • 132 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 09 February 2008 - 02:42 PM

السلام عليكم ورحمه الله وبركاته
ياجماعه لو سؤالى مش واضح انا ممكن اوضح اكثر من ذللك

#10 الحمادي

الحمادي

    مشترك

  • الأعضــاء
  • 50 مشاركة

تاريخ المشاركة 13 February 2008 - 04:46 PM

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

سوالك اخي العزيز واضح

اذا تريد تبحث عن اول row اي صف , تما إضافته للجدول عن طريق (rowid) حيث يا خذ اول عمود اقل قيمة من هذا العمود . وعليك الباقي

#11 weloooo

weloooo

    مشرف

  • فريق الإشراف
  • 249 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 14 February 2008 - 01:00 AM

يا جماعه ال rowid هي أصح طريقه والطريقه التاليه كما بينها أحد الأخوه هي الأصح:
SELECT * FROM employees WHERE rowid= (SELECT min(rowid) FROM employees);
وحتي تتأكدوا من النتائج قوموا بتنفيذ هذه الجمله البسيطه:
SELECT last_name,salary,rowid FROM employees ORDER BY 3;
ثم أنظروا إلي ترتيب ال rowid في النتيجه ، كذلك أنظروا إلي أول النتائج فسوف تجدونها مطابقه لنتيجة الجمله السابقه. لله الأمر من قبل ومن بعد

أحمد يحيى


Oracle Apps Senior Technical Consultant


#12 waled gaber

waled gaber

    عضو

  • الأعضــاء
  • 6 مشاركة
  • الاسم الأول:walid
  • اسم العائلة:gaber
  • البـلـد: Country Flag

تاريخ المشاركة 14 February 2008 - 02:12 PM

انا بعتقد انها تتم بالcursor