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

شرح مبسط للأمر SELECT مع بعض الأمثلة


ولـــيد

Recommended Posts

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


والصلاة والسلام على اشرف الخلق وسيد المرسلين محمد صلى الله عليه وسلم فصلو عليه ياعبادالله اجمعين.
اما بعد :

من يوم غد ان شاء الله سوف اقوم باذن الله على عمل حلاقات في للغة الاستعلام المعروفه لدينا وهي SQL ولكن سوف ابدا من حيث توقف اخي العزيز الاسيف واسئل الله عز وجل ان يعنني على ذلك واتمنى من الاخوه والاخوات الاجتهاد معي والتطبيق معاً حتى نصل الى المستوى المطلوب بأذن الله .

طبعا نقوم بعمل الدورس على نسخة اوكل 9i وبالتحديد عن طريق iSQL عن طريق المتصفح لسهولة حفظ الاوامر او اي برنامج من برامج الاوركل ولكن اهم شي طريقة عمل الاستعلام .


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

تقبلوا تحياتي. :D

رابط هذا التعليق
شارك

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


والصلاة والسلام على اشرف الخلق اجمعين محمد عليه افضل الصلاة والتسليم صلو على الحبيب يالاحباب
اولا احب انبه على شي مهم جدا جدا في الاوركل الا وهو التركيز على صيغت syntax الاوامر في SQL Plus لانه ليس المطلوب مننا حفظ الاوامر ولكن المطلوب فهم الاوامر فقط .

طبعا كما اتفقنا سابقا على انه سوف اقوم بالشرح على نسخة الاوكل 9i ولا يوجد فرق كبير بينها وبين الاصدار
8i ...

ايضا كما اتفقنا سابقا انه سوف ابدا من حيث ماتوقف الاخ الاسيف حفظه الله .

اذا فالنسمي بالله ونبدأ:

طبعا لكي نقوم بتطبيق الاوامر في الاوركل يجب تنزيل IIS اول قبل الاوركل ثم نستخدم iSQL Plus لكي نعمل عليه ويتم تشغيله عن طريق المتصفح وطريقة تشغيله كالتالي :

1- تشغيل السيرفر من البرامج والذي اسمه Oracle HTTP Server |------> Start HTTP Server powered by Apache . طبعا يكون في وضع التشغيل من وحده .
2- نذهب الى المتصفح ونكتب التالي : http://YourComputerName:port/isqlplus
ومثال ذلك http://pc:7778/isqlplus طبعا pc اسم جهازك لكي تتعرف عليه اضغط على خصائص جهاز الكمبيوتر على سطح المكتب ،، طبعا يتبين لك هذا كله عند الانتهاء من تنزيل الاوركل من البدايه ((راجع درس الاخ عمر)).
3- بعد التشغيل المتصفح على iSQL Plus ندخل اسم المستخدم المعلموم لدينا والرقم السري
User \ scott
Password \ tiger
الان انتهينا من تشغل بيئة iSQL.


نمط الاستعلام syntax

Select   الوصف from اسم الجدول   ;


الخطوات لكتابة الاستعلام :
- select.
- الوصف او طريقة العرض.
- from . أي من الجدول المطلوب .
- اسم الجدول وعلى سبيل المثال Emp
- فاصله منقوطه ; وهي مهمه جدا جدا للتعبير على انه انتهى الاستعلام .

مثال :

نريد عرض جميع اسماء الجداول في قاعدة البيانات( ملاحظة علامة * تعني جميع او كل ).

Select * from tab;



طبعا النتائج تكون عرض لجميع الجداول في قاعدة البيانات .
اذا ربما اتى في ذهنك هل يمكنك استخدام نفس المثال مع اسماء الجداول المعروضه في النتائج بالطبع نعم
قم بتبديل اسم الجدول tab الى أي اسم من اسماء الجداول المعروضه لديك .

اذا انتهى درس اليوم وان شاء الله اكون قد عملت مابوسعي وان شاء الله ينال على اعجابكم . :D
تقبلوا تحياتي.

رابط هذا التعليق
شارك

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

اليوم ان شاء الله اقوم بأعطاء امثله وهي الطريقة المثلى في الاوركل

طيب بسم الله نبدأ:

طبعا الامثله بتكون على الجدولين التاليين
Dept
Emp

الصيغة لعرض الاعمدة Syntax

select اسم العامود الاول ,اسم العامود الثاني from اسم الجدول ;



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

طيب لو طلب منك عرض عامودين من جدول ما وليكن الجدول
dept

التطبيق:

select deptno,dname from dept;



deptno=اسم عامود داخل الجدول
dname=ايضا اسم عامود داخل جدول

طيب ننتقل الى جدول
emp
طبعا يفضل عرض جميع البيانات داخل الجدول لكي تتعرف على اسماء الاعمده == راجع الحلقه الثانية

التطبيق:

select empno,ename,sal from emp;



طيب التطبيق يعيد لنا ارقام الموظفين و اسمائهم ورواتبهم كما هو مبين في الاستعلام

طيب لو سألتك وقلت لك اضف على راتب الموظفين يااخي الكريم 50 طبعا ريال مو الف ريال :D اش راح تعمل ؟

اليك التطبيق

select sal,(sal+50) from emp;



طبعا يعرض الاستعلام لك الراتب القديم والراتب بعد الاضافه عليه

وبكذا انتهى درس اليوم وهو الحلقه الثالثه ...وانتظرو الحلقه الرابعه وبتكون دسمه شوي :D

رابط هذا التعليق
شارك

بسم الله الرحمن الرحيم والصلاة والسلام على اشرف الخلق أجمعين محمد صلى الله عليه وسلم ابن عبدا لله فصلوا عليه ياعباد الله .

اليوم الحلقة الرابعة وبتكون تطبيقات على ماسبق ومع إضافات جديدة وان شاء الله يستفيد منها الإخوان ...

بسم الله نبدأ مع جدول emp :

إذا طلب منك ضرب الراتب في 20 وإضافة فوق الناتج 300 ريال الحل :

Select ename,20*sal+300 from emp;



طبعا بتخرج لك النتائج في عامودين الأول ename والثاني 20*sal+300 ولكن الا ترى انا اسم العامود الثاني غير لائق وعند تقديمه للمدير هل يفهم هذا الشي اذا لكي نعطي اسم للعامود جدا الامر سهل في غاية السهوله شاهد الحل :

Select ename,20*sal+300 SALARY from emp;



Select ename,20*sal+300 "NEW SALARY" from emp;



لاحظ الاستعلام الاول سمينا العامود SALARY كلمه واحد .
لاحظ الاستعلام الثاني سمينا العامود NEW SALARY بين علامتي تنصيص ورد في ذهنك سؤال لماذا وضع علامتي تنصيص ؟

الاجابه بكل سهوله لان اسم العامود يحتوي على كلمتين ،، اذا كلمه واحد ليس داعي هناك لعلامة التنصيص .

طيب اذا طلب منك دمج عامودين في عامود واحد ماذا تتوقع الحل ؟؟؟

كالمعتاد الحل سهل جدا جدا شاهد مايلي

Select ename||job from emp;



اذا كذا تم دمج عامودين مع بعض ولكن ربما البعض عندما يرى النتائج يظن انها كلمه واحد ويتهوا بعض الشي طيب لماذا لا نضع بين العامودين جمله توضيحية ؟؟؟
اليك الحل :

Select ename||' His Job Is '||job from emp;



شاهد النتائج الان اليس بشيء ممتع !!

طيب مرائيك بمنع التكرار في الاستعلام ؟؟
جدا سهل ...

الان نعرض جميع الاقسام في جدول emp

Select deptno from emp;



لاحظ النتائج يوجد بها تكرار اذا كنت تريد منع هذا التكرار شاهد الاستعلام

Select distinct deptno from emp;



الامر distinct يمنع التكرار باختصار .
ولاحظ النتائج بنفسك بين الامرين.

الان سنبدأ باستخدام الشروط داخل الاستعلام لاتتصور الامر جدا صعب بل في غاية السهوله ولكن يحتاج منك الفهم فقط .

اذا طلب منك عرض جميع اسماء الموظفين الذين في القسم رقم 10 ؟

Select ename from emp Where deptno=10;



شاهد النتائج عرض لك جميع اسماء الموظفين في القسم رقم 10
طيب اذا طلب منك القسم رقم 20 وراتب اعلى من100 ؟


Select ename,sal from emp Where (deptno=20 and sal>100);



طيب اذا طلب منك عرض راتب الموظفين الذي راتبهم اكبر من 1000؟

Select ename,sal from emp Where sal>100;



طيب اذا طلب منك عرض راتب وعمل الموظف SMITH ؟؟

Select ename,sal,job from emp Where ename='SMITH';



ملاحظه مهمه جدا يجب الانتباه لحالة الاحرف من حيث كبتل و سمول لأسم الموظف .

طيب بقى لنا الشيء القليل في هذه الحلقة ...

اذا طلب منك عرض اسماء الموظفين بين الراتب 1000و 200 ؟

Select ename ,sal from emp Where sal between 1000 and 2000;



ملاحظه مهمه جدا : يجب الترتيب في الاستعلام بعد كلمة between وضع القيمه الاصغر وبعد and وضع القيمه الاكبر .

طيب اذا طلب منك عرض اسماء الموظفين الذي رواتبهم 1000 و 2000و 3000؟

لاحظ اكثر من قيمتين لانستطيع استخدام between ولكن نستخدم كلمة in

Select ename,sal from emp Where sal in(1000,2000,3000);



In أي عرض اسماء الموظفين التي رواتبهم محدده بين الاقواس.


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

تقبلوا تحياتي :D

تم تعديل بواسطة Microsaudi
رابط هذا التعليق
شارك

  • بعد 3 شهور...

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

والحمد لله على جزيل نعمائه وعطائه

عزيزي الفاضل / Microsaudi

مشكووووووووووووووووووووووووور أخي العزيز على هذه الدروس المفيدة لك الشكر والتحية .

رابط هذا التعليق
شارك

  • بعد 4 أسابيع...
  • بعد 4 شهور...
  • بعد 1 شهر...
  • بعد 1 شهر...
  • بعد 12 سنة...

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

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

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

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

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

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