بتاريخ: 30 مايو 200421 سنة comment_7700 هل يوجد تابع بيعمل إن كان العدد موجب بيخليه و إن كان سالب يجعله null تقديم بلاغ
بتاريخ: 30 مايو 200421 سنة comment_7703 يأخ zakkar ماذا تقصد "بتابع" و ياريت توضع السؤال ،،، تقديم بلاغ
بتاريخ: 31 مايو 200421 سنة comment_7738 نعم توجد هناك دالة جاهزة اسمها abs abs(n) SELECT ABS(-15) "Absolute" FROM DUAL; Absolute ---------- 15 وطريقة اخرى : ممكن تعمل دالة تستقبل متغير مثلا Aوتعمل شرط ، اذا كانت A اقل من صفر يقوم بجعل A = A * -1 تقديم بلاغ
بتاريخ: 1 يونيو 200421 سنة كاتب الموضوع comment_7768 أريد Function إذا كان العدد موجب يبقى العدد كما هو وإن كان العدد سالب يصبح null تقديم بلاغ
بتاريخ: 2 يونيو 200421 سنة comment_7779 ممكن تعمل Database trigger يقوم بتأكد من القيمة قبل ادخالها create or replace trigger chk_sal before insert on emp for each row begin if :new.sal < 0 then :new.sal := null; end if; end ; تقديم بلاغ
بتاريخ: 2 يونيو 200421 سنة comment_7806 يمكن أن تستخدم التابعcase ... when ... then ... else ... endراجع كتابOracle9i SQL Referenceملاحظة هذا التابع موجود فقط في الاصدار 9 من أوراكلوهذا المثال يحل المشكلةSQL> create table test(dummy number);SQL> insert into test values (15);SQL> insert into test values (-10);SQL> commit;SQL> select * from test; DUMMY---------- 15 -10select case when dummy>=0 then dummy else null endfrom testCASEWHENDUMMY>=0THENDUMMYELSENULLEND------------------------------------ 15 تقديم بلاغ
بتاريخ: 2 يونيو 200421 سنة كاتب الموضوع comment_7807 مشكور أخي محب الأوراكل هذا ما أريده بالفعلومشكور أخي أبو صالح على التجاوب تقديم بلاغ
بتاريخ: 22 أغسطس 200421 سنة comment_11311 SELECT NULLIF(ABS(&num),-1*&num) FROM dual; تم تعديل 22 أغسطس 200421 سنة بواسطة oss تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.