إنتقال للمحتوى

  • تسجيل الدخول عبر الفيس بوك تسجيل الدخول عبر تويتر Log In with LinkedIn Log In with Google      تسجيل دخول    
  • إنشاء حساب

صورة
- - - - -

تقريب الارقام


4 رد (ردود) على هذا الموضوع

#1 zoghbour

zoghbour

    مشترك

  • الأعضــاء
  • 103 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 08 April 2007 - 01:50 PM

السلام عليكم
الرجاء المساعدة في عمل function لتنفيذ التالي:
عند ادخال رقم
511-->500
566-->600
3200-->3000
4600-->5000
و هكذا
ولكم جزيل الشكر والامتنان

#2 hassan978hmk

hassan978hmk

    مشترك

  • الأعضــاء
  • 90 مشاركة

تاريخ المشاركة 08 April 2007 - 03:30 PM

select round(&x,-length(&x)+1) from dual
حيث X هو الرقم المطلوب تقريبه
والله الموفق
طوبىّ لِمن إذا أُنعمَ عليه شكَر , وإذا ابتليَ صبَر , وإذا أذنَبَ استغفر , وإذا غضبَ حَلِم , وإذا حكَمَ عدَل

صورة

#3 a_m2

a_m2

    مشترك

  • الأعضــاء
  • 169 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 08 April 2007 - 06:52 PM

السلام عليكم
الرجاء المساعدة في عمل function لتنفيذ التالي:
عند ادخال رقم
511-->500
566-->600
3200-->3000
4600-->5000
و هكذا
ولكم جزيل الشكر والامتنان

اتفضل يا اخى
create or replace function asd( a number)
 return number as
 s number;
 begin
 s:=round(a,-2);
 return s;
 end;
 /


#4 zoghbour

zoghbour

    مشترك

  • الأعضــاء
  • 103 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 14 April 2007 - 12:28 PM

شكرا ياخي hassan978hmk و لكني حللتها بطريقة اخرى وهي
SELECT ROUND(*/1000)*1000 FROM DUAL
اخي a_m2
شكرا على اجتهادك و لكن الدالة لا تخدمني

#5 egle2008

egle2008

    مشترك

  • الأعضــاء
  • 66 مشاركة

تاريخ المشاركة 19 April 2007 - 06:31 PM

we can use round