دروس كمبيوتر وصيانة دروس حاسب دروس مجلة  درس نيوك phpnuke الدروس دروس مسنجر MSN - yahoo - Gmail دروس منتديات vBulletin دروس الجوالات والهواتف دروس السي بنل cpanel دروس اكسس access دروس بيونت شوب برو - point shop pro دروس برمجة php - mysql دروس برامج منوعة software دروس ثري دي ماكس 3D max دروس جافا سكريبت JavaScript دروس دريم ويفر DreamWeaver دروس شبكات Networks دروس سويش - swish دروس فلاش - flash دروس فيجوال بيسك Visual Basic دروس فرونت بيج - frontpage دروس فوتوشوب photoshop دروس هكر hacker crack virus
توبيكات رمضان | رسايل رمضان | ثيمات رمضان | طبخات رمضانية | توبيكات رمضانية | صور عن رمضان | دعاء رمضان
احصائيات سريعة
اقسام على الموقع
دروس في أنظمة التشغيل | ماي سكيول - MySQL | لفيجوال بيسك - Visual Basic | المات لاب Matlab | اللينكس و اليونكس | الاسمبلي - ASSEMBLY | الاوتلوك - Outlook | البرمجة تحت اللنكس -Linux Programming | البرمجة تحت وندوز بواسطة دوال ال win API | البرمجة في بيئة الدوت نت .Net | التصمبم والرسوم | الدلفي - Delphi | الجافا - Java | السي - C | الصوت و الصورة | الوورد - Word | القسم العام للأوفيس | الكوبول - COBOL | control panel-ftp | اوراكل - Oracle | اكسل - Excel | تحميل الملفات | برامج متنوعة | برامج التصفح | برامج الحماية | برامج إنترنت | تعرّف على الويب | بوربوينت - Power Point | images | دروس : كمبيوتر وصيانة | دروس مجلة نيوك phpnuke | دروس مسنجر MSN - yahoo - Gmail | دروس منتديات vBulletin | دروس الجوالات والهواتف | دروس السي بنل cpanel | دروس اكسس access | دروس بيونت شوب برو - point shop pro | دروس برمجة php - mysql | دروس برامج منوعة software | دروس ثري دي ماكس 3D max | دروس تطوير المواقع والمنتديات | دروس جافا سكريبت JavaScript | دروس دريم ويفر DreamWeaver | دروس شبكات Networks | دروس سويش - swish | دروس فلاش - flash | دروس فلاش mx | دروس فى نظام الوندوز WINDOWS | دروس فىالباسكال - Pascal | دروس فيجوال بيسك Visual Basic | دروس فرونت بيج - frontpage | دروس فوتوشوب photoshop | دروس هكر hacker crack virus | سي ++ | سي شارب - #C | فيجوال سي ++ - ++ Visual C | قسم البرمجة العام | دروس فى لغة HTML
البحث في المواد

اكثر المحتويات زيارة
الدوال في الاكسل (6,317 مشاهده)
ربط قاعدة بيانات أكسس (MS Access) مع برنامج الفيجوال بيسك بطريقة(ODBC) (4,097 مشاهده)
الدرس الثالث : بعض تطبيقات الدوال في اكسل (3,065 مشاهده)
تعريف الاستعلام وطريقة عرضه في آكسس، أنواع الاستعلامات، نافذة تحديد الاستعلام! (2,384 مشاهده)
الدرس الثاني: بعض الحيل لتسهيل برنامج اكسل (2,280 مشاهده)
شرح طريقة استعمال الأوتلوك مع بريد الهوتميل (2,148 مشاهده)
تغيير لغة واجهة التطبيق من عربي الى انجليزي وبالعكس لـ Windows-based applications (2,116 مشاهده)
أنواع العلاقات وطريقة الربط بين الجداول. (1,909 مشاهده)
مقدمة عامة حول الاكسل وحيل خاصة بالاكسل (1,737 مشاهده)
أنشئ قاعدة بياناتك التي ستستند إليها في تعلم طريقة ربط الجداول والاستعلامات. (1,703 مشاهده)
الدرس الأول : عمل شريحة في البوربوينت (1,558 مشاهده)
دروس في الأوفيس الأكسس - Access0- (1,476 مشاهده)
دورة الأكسس: الدرس السادس : منوعات في أكسيس . (1,464 مشاهده)
كيفية حل مشاكل الانترنت اكسبلور Internet Explorer (1,447 مشاهده)
اضافه صوت ونص لخلفيه في باور بوينت (1,342 مشاهده)
شرح طريقة التجميع Grouping في برنامج الاكسل (1,306 مشاهده)
التعرف على مكونات الكمبيوتر (1,266 مشاهده)
برنامج Windows Movie Maker لتكوين أفلام (1,249 مشاهده)
درس تعريب المجلة (1,241 مشاهده)
دورة الأكسس: الدرس السادس : منوعات في أكسيس .0--- (1,234 مشاهده)
مقدمة في ربط قواعد البيانات داخل بيئة الـ .NET باستخدام الـ VB.NET (1,218 مشاهده)
كيف تجعل برنامجك أكثر تألقا وجمالا باستخدام أداة Active Skin (1,191 مشاهده)
ما هو المات لاب MATLAB؟ (1,158 مشاهده)
مقدمة عن لغة البيسك (1,121 مشاهده)
الفيجوال بيسك - مقدمة (1,081 مشاهده)
جديد مواد مع عشوائي
التحويل التلقائي للحروف ل- ل- ه إلى اسم الجلالة0---- (783 مشاهده)
النسبة المئوية لا تظهر بالخط العربي & الشدة وألف المد في لفظ الجلالة0---النسبة المئوية لا تظهر بالخط العربي & الشدة وألف المد في لفظ الجلالة0--- (483 مشاهده)
ضبط خيارات اللغة فى الـ Microsoft Word0--- (534 مشاهده)
استخدام لوحة المفاتيح في الـ Word0---- (703 مشاهده)
إضافة كلمة سر إلي ملفات الورد دون استخدام برامج0--- (783 مشاهده)
دمج المراسلات0-- (435 مشاهده)
وضع صورة كخلفية للنص0-- (559 مشاهده)
السماح للمستخدمين بتعديل أجزاء من ملف وورد محمي (Word2003)0--- (381 مشاهده)
كتابة الأرقام الكسرية ورموز المعادلات0-- (624 مشاهده)
درس كامل عن الدمج السهل من لوحة المفاتيح ف0-ي برنامج الـ Word (390 مشاهده)
دورة الأكسس: الدرس السادس : منوعات في أكسيس .0--- (1,234 مشاهده)
دورة الأكسيس : الدرس الرابع : العلاقات0---- (659 مشاهده)
أساسيات في Access0--0 (449 مشاهده)
تصميم تقرير لطباعة البيانات0---- (491 مشاهده)
تصميم نموذج استعراض البيانات‏0--تصميم نموذج استعراض البيانات‏0-- (470 مشاهده)
تصميم نموذج إدخال‎ ‎البيانات0--- (557 مشاهده)
إنشاء قوائم خاصة باستخدام الماكرو(1)0-- (435 مشاهده)
خطوات إنشاء الماكرو في تذييل النموذج (2)0-- (369 مشاهده)
خطوات إنشاء الماكرو في تذييل النموذج (1)0- (325 مشاهده)
استعلامات SQL في Access - تعديل الجداول وإضافة الحقول0- (460 مشاهده)
استعلامات SQL في Access - تحديث البيانات الجدولية0-- (415 مشاهده)
الاستعلامات الإجرائية -4 (استعلام الحذف)0--- (214 مشاهده)
الاستعلامات الإجرائية -2 (استعلام الإلحاق)0--- (294 مشاهده)
تصميم تقرير لطباعة الإجمالي0--- (321 مشاهده)
استعلامات التحديد Select Query مع أمثله (1)0--- (425 مشاهده)
اعلانات في الموقع على جميع الصفحات

التوابع العالية في MySQL - الجزء الأول

مستوى الدرس :مبتدئ



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




عنوان الدرس : التوابع العالية في MySQL - الجزء الأول




 




توابع التحكم بالانسياب




كما هو واضح من اسمها أنها تستخدم للتحكم في سير البرنامج, و أهم تابعين يستخدمان للتحكم بالانسياب في MySQL هما ifnull() , if() و سنتكلم عنهما الآن إن شاء الله.




 




التابع ifnull() :




لنفرض أنك ستكتب استعلاماً يعيد مجموع كل من الراتب salary و الحوافز bonus لكل موظف, فإنك ستكتب الاستعلام التالي:




select name , salary + bonus from emp;




ستفاجئ عندما يظهر لك مجموع راتب و حوافز بعض الموظفين هو NULL فكيف حصل ذلك؟ إن الاستعلام السابق يقوم بجمع الراتب مع الحوافز, لكن هناك بعض الموظفين الذين حوافزهم هي null و أنت تعرف أن نتيجة جمع أي قيمة مع NULL هي null و للتخلص من هذه المعضلة فأنت بحاجة إلى الخوارزمية التالية:




 




قم بتشغيل استعلام MySQL على الجدول emp




يعيد  name و مجموع salary + bonus




فإذا كان bonus = null




اطبع فقط salary




و إلا




اطبع salary + bonus




 




إذا أردت كتابة هذه الخوارزمية بأحد لغات البرمجة مثل PHP فهي ستكون طويلة, لذلك توفر لنا MySQL التابع ifnull() الذي يعمل عمل الخوارزمية السابقة. يأخذ هذا التابع وسيطين, و هو يقوم باختبار قيمة الوسيط الأول فإذا لم تكن مساوية لـ null فسيعيد قيمة الوسيط الأول, و إذا كانت قيمة الوسيط الأول مساوي لـ null فإن التابع سيعيد قيمة الوسيط الثاني, لذلك فإن الاستعلام السابق سيأخذ الشكل التالي:




 




select name , salary + ifnull(bonus , 0) as 'total' from emp;




 




التابع if() :




يأخذ التابع if() ثلاث وسطاء حيث أن الوسيط الأول سيكون شرطاً, و من الممكن أن يكون أي معامل حسابي أو سلسلة محرفية أو عبارة like , و في حال كان الشرط محققاً فإن التابع سيعيد الوسيط الثاني, و إلا فإنه سيعيد الوسيط الثالث, دعنا نأخذ المثال التالي:




لنفرض أنك تريد أن تقدم حسماً قدره 15% على كل أفلام العنف, فباستخدام التابع if() سيكون شكل الاستعلام كما يلي:




select mov_name , kind, if(kind ='violence' , price * .85 , price) as price from movies ;




لاحظ أن الاستعلام سيبحث في العمود kind فإذا وجد فيها القيمة violence سيقوم بضرب القيمة المخزنة بالعمود price بـ 0.85 و إذا وجد أن القيمة المخزنة في العمود kind ليست violence فسيطبع القيمة المخزنة في العمود price كما هي.




و بالتالي ستكون نتيجة الاستعلام السابق كما يلي:




+-----------------------+---------------+--------------+




|mov_name                 |kind                |price           |




+-----------------------+---------------+--------------+




|last man standing    |violence         |212.50          |




|city of angels           |romance         |300              |




|urban legend           |horror             |300              |




|the fist of legend     |violence         |212.50          |




|assassins                 |violence           |340.00        |




|face off                    |violence           |365.50        |




+-----------------------+---------------+--------------+




 




و آخر دعوانا أن الحمد لله رب العالمين




أخوكم أبو عمر

درس التوابع العالية في MySQL - الجزء الأول

أضف هذه المادة في موقعك:
مواد مشابهة:
الاستعلامات المتقدمة في MySQL - الجزء الثاني الاستعلامات المتقدمة في MySQL - الجزء الثاني
الاستعلامات المتقدمة في MySQL - الجزء الثاني
(مرات المشاهدة: 72 مرات)
توابع التاريخ و الوقت في MySQL - الجزء الرابع توابع التاريخ و الوقت في MySQL - الجزء الرابع
توابع التاريخ و الوقت في MySQL - الجزء الرابع
(مرات المشاهدة: 72 مرات)
مفهوم قواعد البيانات مفهوم قواعد البيانات
مفهوم قواعد البيانات
(مرات المشاهدة: 214 مرات)
مفاهيم في قواعد البيانات العلائقية - الجزء الثاني 1 مفاهيم في قواعد البيانات العلائقية - الجزء الثاني 1
مفاهيم في قواعد البيانات العلائقية - الجزء الثاني 1
(مرات المشاهدة: 85 مرات)
بناء الجداول في MySQL - الجزء الأول 1 بناء الجداول في MySQL - الجزء الأول 1
بناء الجداول في MySQL - الجزء الأول 1
(مرات المشاهدة: 39 مرات)
بناء الجداول في MySQL - الجزء الثاني بناء الجداول في MySQL - الجزء الثاني
بناء الجداول في MySQL - الجزء الثاني
(مرات المشاهدة: 77 مرات)
مقــدمـةمقــدمـة مقــدمـةمقــدمـة
مقــدمـة
(مرات المشاهدة: 54 مرات)
استخدام التعليمة Create في قواعد بيانات MySQL استخدام التعليمة Create في قواعد بيانات MySQL
استخدام التعليمة Create في قواعد بيانات MySQL
(مرات المشاهدة: 66 مرات)
الفهارس في MySQL - الجزء الثاني 2 الفهارس في MySQL - الجزء الثاني 2
الفهارس في MySQL - الجزء الثاني 2الفهارس في MySQL - الجزء الثاني 2
(مرات المشاهدة: 29 مرات)
الاستعلامات المتقدمة في MySQL - الجزء الأول الاستعلامات المتقدمة في MySQL - الجزء الأول
الاستعلامات المتقدمة في MySQL - الجزء الأول
(مرات المشاهدة: 156 مرات)
fot
جميع الحقوق محفوظة :Copyright © All rights reserved