m_nasef بتاريخ: 3 ديسمبر 2005 تقديم بلاغ مشاركة بتاريخ: 3 ديسمبر 2005 هل هناك دالة فى sql تقوم باستخدام > أو < أو <> للمقارنه مثل decode,caseمثالselect sal ,decode(sal,sal>500,'up',sal<500,'down','other')from empولكن بشرط فى sql وليس فى pl/sql اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Osama Soliman بتاريخ: 6 يناير 2006 تقديم بلاغ مشاركة بتاريخ: 6 يناير 2006 يوجد ضمن دوال SQL ما يسمى Case expression وهذا شرح وامثلة له(هذا الميزة موجود بداية من الاصدار 9i وما بعده)The CASE ExpressionCASE expressions let you use IF-THEN-ELSE logic in SQL statements without having to invoke procedures.Syntax CASE expr WHEN comparison_expr1 THEN return_expr1 [WHEN comparison_expr2 THEN return_expr2 WHEN comparison_exprn THEN return_exprn ELSE else_expr] END OR CASE WHEN < condition> THEN < return value> … … … [ELSE < return value>] END 1- SELECT last_name, job_id, salary, CASE job_id WHEN 'IT_PROG' THEN 1.10*salary WHEN 'ST_CLERK' THEN 1.15*salary WHEN 'SA_REP' THEN 1.20*salary ELSE salary END "REVISED_SALARY" FROM employees; 2- SELECT first_name, department_id, salary, CASE WHEN salary < 6000 THEN 'Low' WHEN salary < 10000 THEN 'Medium' WHEN salary >= 10000 THEN 'High' END Category FROM employees WHERE department_id <= 30 ORDER BY first_name; اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
nhamzehn بتاريخ: 6 نوفمبر 2006 تقديم بلاغ مشاركة بتاريخ: 6 نوفمبر 2006 (معدل) الى m_nasefالكود الاول تبع ال decode فيه خطأ الرجاء المراجعة وكتابة الكود الصحيح حتى اتمكن من استخدامهوشكرا تم تعديل 6 نوفمبر 2006 بواسطة nhamzehn اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.