tommy_azzam بتاريخ: 25 سبتمبر 2006 تقديم بلاغ مشاركة بتاريخ: 25 سبتمبر 2006 السلام عليكم ...كنت عايز من اخواني شرح الاستعلام الاتي select count (*) tota,l sum(decode(to_shar(hire_date, 'yyyy') ,1995,1,0)) "1995" ولكم جزير الشكر اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
tommy_azzam بتاريخ: 26 سبتمبر 2006 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 26 سبتمبر 2006 السلام عليكم ورحمة الله .. رمضان كريم سؤال هو شرح .. select count (*) total sum(decode(to_char(hire_date, 'yyyy') ,1995,1,0)) "1995" طبعا هو ليه باقي بس النقطه اللي مش فاهمها هي decode ماهي وظيفتها في هذا المثال وشكرا,, اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
MMA بتاريخ: 26 سبتمبر 2006 تقديم بلاغ مشاركة بتاريخ: 26 سبتمبر 2006 أخي الكريم كل عام وأنت بخيرالأمر DeCode هو أمر يستخدم في إنشاء شرط داخـل الإستعلام ، فيمكن توضيحةفي المثال التالي :لديك جدول يدعي Emp ، وهو خاص بجدول الموظف ، يحتوي علي الحقول الثلاثةالتالية :Enumber --> رقم الموظفEname --> إسم الموظفSex --> النـــوعيتم التخزين داخل حقل ال Sex قيمة واحدة إما حرف ( M ) لتمثيل قيمــة الذكر أو حرف ( F ) لتمثيل قيمة الأنثي.المطلوب إنشاء إستعلام لعرض كافة الموظفين بحيث إجراء ضبط لحقل ال Sexبحيث أن يعرض قيمة ذكر أو أنثي :الإجابة :--------- Select Enumber,Ename,DeCode(Sex,'M','ذكـر','F','انثي') As Esex From Emp اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
tommy_azzam بتاريخ: 26 سبتمبر 2006 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 26 سبتمبر 2006 جزاك الله خيرا وجعله ان شاء الله في ميزان حسناتك اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
na3es بتاريخ: 4 أكتوبر 2006 تقديم بلاغ مشاركة بتاريخ: 4 أكتوبر 2006 أولا شرح الدالة sum تقوم بجمع مجموعة من الأعداد الموجودة في أحد الاعمدة وذلك بتخزين القيمة الموجودة في الصف الأول ومن ثم إضافة القيمة الموجودة في الصف الثاني إلى القيمة السابقة وهكذا ثانيا شرح الدالة decodeتقوم باختبار قيم موجودة في عمود ما إذا كانت القيمة مساوية للقيمة التي سوف تختبرها تعيد القيمة 1إذا كانت القيمة غير مساوية للقيمة التي سوف تختبرها تعيد القيمة 2 Decode(ColumnName , ConditionValue, ReturnValue1,ReturnValue2) مثالإذا اردنا ان نظهر عمود يوضح إذا كان اسم الموظف هو sameأم لا نقوم بكتابة التالي: Decode (ename,'same','yes','no') سوف يقرا كل سطر ويعيد ناتج الاختبار اذا كان اسم الموظف sameسيعيد yesوإلا سيعيد noأما بالنسبة للمثال الذي تريد شرحه فهو يحتوي على ثلاث دوال متداخلة يتم تنفيذها من الداخل إلى الخارجTo_charDecodeSumفي الدالة الأولى سيقوم بتحويل تاريخ التحاق الموظف على هيئة yyyyوناتج هذه الدالة مثلا كالتالي:1995,1994,1989,1995,1995,1990ومن ثم يتم اختبار كل تاريخ من التواريخ الناتجة عن الدالة الاولى عن طريق الدالة الثانية بحيثإذا كان التاريخ يساوي 1995يعيد الرقم 1وإلا سوف يعيد الرقم 0وبالتالي ناتج الدالة decode من المثال السابق سوف يكون1,0,0,1,1,0ومن ثم يتم جمع هذه الصفوف عن طريق الدالة الثالثة decodeفيظهر الناتج التالي 3أتمنى من الله العلي القدير أن أكون قد وضحت ما كنت تحتاج إليه راجيا من الله ان يوفقك وإيانا أجمعين اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.