منتدى التصميم والاشهار العربي
الدرس الأخير : استخدام لغة ( تقنية ) الإستعلامات بطريقة Tsql - الجزء الرابع 2812_md_13408903391
منتدى التصميم والاشهار العربي
الدرس الأخير : استخدام لغة ( تقنية ) الإستعلامات بطريقة Tsql - الجزء الرابع 2812_md_13408903391
منتدى التصميم والاشهار العربي
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

منتدى التصميم والاشهار العربي

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



 

 الدرس الأخير : استخدام لغة ( تقنية ) الإستعلامات بطريقة Tsql - الجزء الرابع

اذهب الى الأسفل 
2 مشترك
كاتب الموضوعرسالة
Mr.samer
مؤسس شبكة
مؤسس شبكة
Mr.samer


عدد المساهمات : 311
نقاط النشاط : 479
مستوى النشاط : 1
تاريخ التسجيل : 22/06/2012
الموقع : شبكة ابداع

الدرس الأخير : استخدام لغة ( تقنية ) الإستعلامات بطريقة Tsql - الجزء الرابع Empty
مُساهمةموضوع: الدرس الأخير : استخدام لغة ( تقنية ) الإستعلامات بطريقة Tsql - الجزء الرابع   الدرس الأخير : استخدام لغة ( تقنية ) الإستعلامات بطريقة Tsql - الجزء الرابع Emptyالسبت أغسطس 11, 2012 5:46 am

الدوال في
الاستعلامات .



تستخدم العديد من الدوال ضمن طيات جمل الاستعلام ، وهي
شائعة الاستخدام ، ومريحة ، وتعيد قيمة وحيدة - لا تعيد جدول - سنتعرف على
بعض الدوال مع بعض الأمثلة خلال هذا الدرس .




ولننظر نظرة سريعة إلى الصيغة العامة لاستخدام الدوال والتي
تأخذ الشكل التالي :




رمز برمجي:


SELECT func(colum) FROM table WHERE condition;




الدالة

AVG :


تعطينا هذه الدالة
متوسط حقل ما ، ولحساب متوسط الأعمار في قاعدة البيانات مثلاً نكتب أمراً
كالتالي :


رمز برمجي:


Select AVG(Age) from tb_main;


ولك ان تتخيل ماذا سنفعل لو لم نستخدم هذه الدالة ،
كنا سندور على جميع السجلات حيث نجمع ارقام كل سجل ثم ننتقل إلى التالي
وهكذا - برمجياً - .


أيضاً يمكننا استخدام الدالة بشرط ... فمثلاً لحساب متوسط
أعمار الأشخاص الذين لا تزيد أعمارهم عن 25 :



رمز برمجي:


SELECT AVG(Age) FROM tb_main where age < 25;


لو لاحظت لوجدت أن ناتج الدالة يظهر في حقل تحت اسم Expr100 أو ما شابه ... لذا قم - إذا كنت تريد -
باعادة تسمية حقل الناتج عن طريق As كما تعلمنا
سابقاً وبالشكل التالي :

رمز برمجي:


SELECT AVG(Age) as AVGAGE FROM tb_main WHERE age < 25;





لاحظ أن الدالة سوف تتجاهل السجلات الفارغة ...





الدوال

Sum,Max,Min :


تعطي هذه الدوال
المجموع - الأكبر - الأصغر على التوالي ، وهذا مثال على أكبر عمر في قاعدة
البيانات :


رمز برمجي:


SELECT max(Age) AS mxAGE FROM tb_main;





لا تنس أن بإمكاننا وضع شرط لعملية الإستعلام .






الدالة

Count :


وتعيد هذه الدالة عدد
السجلات ولها صورتان تعمل مع أكسيس ... أما الصورة الثالثة فهي لا تعمل
على الاكسيس :


الصيغة
الأولى :

Count(colum) ... وتعيد عدد السجلات التي لم يكن هذا
الحقل فارغاً فيها .
الصيغة الثانية :
Count(*) ... وتعيد عدد السجلات دون النظر إلى إذا ما كانت
فارغة أم لا .

أما الصيغة الثالثة : COUNT(DISTINCT Colum( حيث تقوم بعد السجلات مع تجاهل
المكرر منها .

ولنر مثالاً على الصيغة الثانية :




رمز برمجي:


Select count(*) From Tb_Main;





لا تنس أن بإمكانك وضع شرط لعملية العد .






كانت هذه بعض الدوال البسيطة والاكثر شهرة في TSql والآن ، ماذا لو كانت لدينا
علاقات ونرغب في العمل عليها




.

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





رمز برمجي:


SELECT tb_main.Fname, tb_main.lname, Tb_R1.passport, tb_r1.bclass, tb_r1.from
FROM tb_main, tb_r1
WHERE tb_main.Number = tb_r1.Number;



دعنا الآن نلاحظ الفروق بين هذه
الطريقة والطريقة السابقة :

أولاً : نقوم بكتابة اسم الجدول.اسم الحقل
وذلك مهم لأننا نتعامل مع أكثر من جدول .
ثانياً : نقوم بكتابة اكثر من جدول بعد عبارة

From لأننا نريد النواتج من أكثر من جدول .
ثالثاً : السطر الأخير من جملة الاستعلام هو لكي يعرض
المعلومات التي تتشابه أرقامها في الجدولين سوية .



دعنا الآن نجرب مثالاً آخراً ... وذلك بالاستعلام عن كافة
المعلومات التي تتعلق بالأصدقاء الذين تزيد أعمارهم عن 20 سنة .





رمز برمجي:


SELECT tb_main.Fname, tb_main.lname, Tb_R1.passport, tb_r1.bclass, tb_r1.from
FROM tb_main, tb_r1
WHERE tb_main.Number = tb_r1.Number and tb_main.age >25;




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


ومازال حديثنا حول العلاقات وما يتعلق بها ... وسنتحدث عن
الدالة Join .




النوع الأول :

Inner Join :



هي الطريقة العادية والتي تحدثنا عنها
في الدرس السابق تعطينا النواتج في حال كان شرط العلاقة متحققاً في كلا
الجدولين .
بمعنى : جرب أن تحذف بعض سجلات الأصدقاء من الجدول الثاني ،
وستجد أن معلوماتهم - حتى الأساسية - لن تظهر .


هذا النوع من الربط يطلق عليه Inner
Join
وهو الافتراضي ... ويمكننا كتابته بالشكل التالي للتفريق بين
الأنواع المختلفة :




رمز برمجي:


SELECT tb_main.Fname, tb_main.lname, Tb_R1.passport, tb_r1.bclass, tb_r1.from
FROM tb_main inner join tb_r1
on tb_main.Number=tb_r1.Number;




لاحظ أننا استبدلنا Where ب on كما وضعنا inner join
بين اسمي الجدولين .





النوع
الثاني :

Left Join :


في هذا النوع يعرض
جميع بيانات الجدول الأول ( على اليسار ) ومن ثم يعرض البيانات المقابلة في
الجدول الثاني .
لاحظ في هذا النوع أمرين :


* إذا كانت هناك سجلات (
على اليسار ) لا تقابلها سجلات على اليمين فإن اليسار يعرض ويعرض اليمين
فارغاً .
* وإذا كانت هناك سجلات ( على اليمين ) ليس لها مقابل على
اليسار فإنها لا تُعرض أبداً .


مثال هذه النوعية :

رمز برمجي:


SELECT tb_main.Fname, tb_main.lname, Tb_R1.passport, tb_r1.bclass, tb_r1.from
FROM tb_main Left JOIN tb_r1 ON tb_main.Number=tb_r1.Number;




النوع
الثالث :

Right Join :


هو النوع العكسي
تماماً للعملية السابقة ، وهذا مثال عليه :


رمز برمجي:


SELECT tb_main.Fname, tb_main.lname, Tb_R1.passport, tb_r1.bclass, tb_r1.from
FROM tb_main Right JOIN tb_r1 ON tb_main.Number=tb_r1.Number;




*** في النهاية أود أن انبه إلى أنه
ما زال هناك الكثير في TSQL ولكن كانت هذه نبذه عنها...



والله الموفق ...

وشكرا لكم

الدرس الأخير : استخدام لغة ( تقنية ) الإستعلامات بطريقة Tsql - الجزء الرابع
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://altsmem.ahlamontada.com
salah xavi
مبدع مشارك
مبدع مشارك
salah xavi


عدد المساهمات : 76
نقاط النشاط : 76
مستوى النشاط : 2
تاريخ التسجيل : 26/07/2012
العمر : 25

الدرس الأخير : استخدام لغة ( تقنية ) الإستعلامات بطريقة Tsql - الجزء الرابع Empty
مُساهمةموضوع: رد: الدرس الأخير : استخدام لغة ( تقنية ) الإستعلامات بطريقة Tsql - الجزء الرابع   الدرس الأخير : استخدام لغة ( تقنية ) الإستعلامات بطريقة Tsql - الجزء الرابع Emptyالثلاثاء أغسطس 28, 2012 6:31 pm

شكرا على الموضوع
الرجوع الى أعلى الصفحة اذهب الى الأسفل
 
الدرس الأخير : استخدام لغة ( تقنية ) الإستعلامات بطريقة Tsql - الجزء الرابع
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
منتدى التصميم والاشهار العربي :: جديد شبكه ابداع :: دورات شبكة ابداع :: سلسلة دروس تعليم أكسيس-
انتقل الى: