بتاريخ: 24 مايو 200520 سنة comment_37225 اخواني اعضاء منتدى اوركل اريد شرح وتعريف عن decode ماذا يعني وما عمله عندي شرح بكره ولغتي الانجليزيه ضعيفه واتمناء من اخواني الاعزاء انهم يساعدوني اخوكم modiOne وشاكر لكم جهودكم اي واحد عنده معلومه ولو بسيطه لا يبخل علي فيها تقديم بلاغ
بتاريخ: 24 مايو 200520 سنة comment_37229 الاجراء deocdeعمله مثل عمل الاجراءcaseوتستخدم فى جمل الsql لاسترجاع قيم محددة اوعلى حسب قيم العمود فلنفرض مثلا انة لديناالجدول التالىcreate table a (x int, b int);ادخل بة القيم التاليةinsert into a values (1,2);insert into a values (1,3);insert into a values (2,4);insert into a values (2,5);insert into a values (3,6);والانselect * from a where b=decode (x,1,2,2,4)ماذا تعنى هذ الجملةتعنى التالىاذا كانت قيمة x1ارجع القيمة 2واذا كانت قيمة x2ارحع القيمة 4اليك هذة القاعدة البسيطةSELECT DECODE (value,<if this value>,<return this value>, <if this value>,<return this value>, ....)FROM dual; وحاضر لاى سؤالselman0 تقديم بلاغ
بتاريخ: 24 مايو 200520 سنة comment_37231 اخى العزيزDecodeهى عبارة عن دالة تعمل عمل مشابه لمعنى if then elseاى انها تعيبر الى حد ما اداه شرطيةفهذا مثال ستفهم منه ان شاء الله تعالى عملهانفترض ان ليدك عدة موظفين فى عدة اقسام مختلفة و تريد ان تسترجع رواتب هؤلاء الموظفين و لكن بنسبة زيادة لكل موظف حسب قسمه يعنى قسم:-- رؤساء الاقسام(Dept_head) يكون راتبهم = الراتب الاساسى + 25 %-الموظفين(Employees) يكون راتبهم = الراتب الاساسى + 15 %-العمال(Worker) يكون راتبهم = الراتب الاساسى + 10%-اى شخص اخر غير هؤلاء(Other) يكون راتبهم = الراتب الاساسى فقط[/sql]select name,job_id,salary 'Decode(job_id,'Dept_head,0.25 * salary,'Employees',0.15 * salary,'Worker',0.10 * salary,salary from emp;مع افتراض ان اسم الجدول هو امب هنا ان كان الموظف الذى تم اختيارم يتبع قسم HDept_head سوف يكون مرتبة == الراتب الاساسى + 25 %و هكذا لباقى الموظفين و ان كان الموظف لا يتبع اى قسم من هذه الاقسام سيكون مرتبه فقط الاساسىارجوا ان اكون افدتك تقديم بلاغ
بتاريخ: 24 مايو 200520 سنة كاتب الموضوع comment_37245 يعطيكم الف عافيه ويجلعه الله في ميزان حسناتكم والله يزودكم بطاعة ويزودكم بالعلم النافع وشكراً لكرمكم يقال ليس البخيل بخيل المال بلى البخيل بخيل الجاه والعلم واشهد انكم اكرمتوني وشكر خاص على القامين على هذا المنتدى الرائع selman0searcherالف الف شكر تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.