بتاريخ: 3 ديسمبر 200520 سنة comment_53067 هل هناك دالة فى sql تقوم باستخدام > أو < أو <> للمقارنه مثل decode,caseمثالselect sal ,decode(sal,sal>500,'up',sal<500,'down','other')from empولكن بشرط فى sql وليس فى pl/sql تقديم بلاغ
بتاريخ: 6 يناير 200620 سنة comment_56780 يوجد ضمن دوال 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; تقديم بلاغ
بتاريخ: 6 نوفمبر 200619 سنة comment_82318 الى m_nasefالكود الاول تبع ال decode فيه خطأ الرجاء المراجعة وكتابة الكود الصحيح حتى اتمكن من استخدامهوشكرا تم تعديل 6 نوفمبر 200619 سنة بواسطة nhamzehn تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.