الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

اسهل طريقه لمعرفه الفرق بين تاريخين

Featured Replies

بتاريخ:

بسم الله الرحمن الرحيم

اليوم ياشباب جايبلي طريقه سهله ومريحه لمعرفة الفرق بين تارخين بشرط باليوم والشهر والسنة

ياشباب فأنا لا أدعي المعرفه ولكن لكل مجتهد نصيب فأرجو من كل يطبق هذا الاستعلام إن كان لديه طريقة افضل

ان يشاركنا بها

create table t ( end_date date, start_date date );

insert into t values ( '10-FEB-2000', '02-JAN-1999' );

insert into t values ( '02-FEB-2000', '10-JAN-1999' );

select months_between( end_date, start_date ),
trunc( months_between( end_date, start_date ) /12 ) Years,
mod( trunc( months_between( end_date, start_date ) ), 12 ) months,
end_date - add_months(start_date,trunc( months_between( end_date,start_date ) )) days
from t;
---------------------
MONTHS_BETWEEN(END_DATE,START_DATE)      YEARS     MONTHS       DAYS
----------------------------------- ---------- ---------- ----------
                        13.2580645          1          1          8
                        12.7419355          1          0         23

end_date date		 start_date date

'10-FEB-2000'		 '02-JAN-1999'

how to calculate the day :

step (1) :
select months_between( end_date,start_date ) days
from t;
---------------
     DAYS
----------
13.2580645

step (2) :

select trunc( months_between( end_date,start_date )) days
from t;
--------------------
     DAYS
----------
       13


step (3) :

select add_months(start_date,trunc( months_between( end_date,start_date ) )) days
from t;
-----------------------

DAYS
--------------------
02-FEB-2000 12:00:00

step (4) :

select end_date - add_months(start_date,trunc( months_between( end_date,start_date ) )) days
from t;
----------------------
     DAYS
----------
        8


ولا تنسونا من صالح تعليقاتكم ودعواتكم

http://rapidshare.com/files/215276325/deff...ween_2_date.txt

بتاريخ:

تسلم اخي ..

nice way to find the no. of days
for me it was new thing
your way in disc. also nice
thank you very much <_<

بتاريخ:

بدك الصراحة لسه كنت بحسب معدل أعمار الموظفين بالشركة ولقيت مشاركتك بالصدفة ، أشكرك جزيل الشكر

  • بعد 3 شهور...
بتاريخ:
  • كاتب الموضوع

حل آخر وبالتوفيق للجميع :

select (trunc(months_between(sysdate, '30-JUN-2007')) /12)*365 Day,
       trunc(months_between(sysdate, '30-JUN-2007')) months,
       trunc(months_between(sysdate, '30-JUN-2007')) /12 Year
from dual

بتاريخ:
  • كاتب الموضوع

الحل الجديد اسهل من الي راح وبعد كذا الله اعلم

بتاريخ:

تسلم يالغالي

  • بعد 1 شهر...
بتاريخ:

انا كنت حاولت احل السؤال دا قبل كدا .. ووصلت لحل بنفس الفرة تقريبا و لكن راحت من على بالى دالة MOD خالص فاضطريت اعمل SUBSTR و ادور جواها على INSTR

SELECT HIREDATE,
      TRUNC(MONTHS_BETWEEN(SYSDATE,HIREDATE)/12) YEARS,
      TRUNC(SUBSTR(MONTHS_BETWEEN(SYSDATE,HIREDATE)/12,INSTR(MONTHS_BETWEEN(SYSDATE,HIREDATE)/12,'.'))*12) MONTHS,
      TRUNC(SUBSTR(MONTHS_BETWEEN(SYSDATE,HIREDATE),INSTR(MONTHS_BETWEEN(SYSDATE,HIRED
ATE),'.'))*30) DAYS
FROM EMP;



جزاكم الله خيرا

بتاريخ:

بالنسبة للحل الاخر بيحسب المدة الزمنية كاملة بالايام
وبعدين المدة كاملة بالشهور
و بعدين المدة كاملة بالسنين ..

و الا ما كانش حد غلب ;)

بتاريخ:

شكرا لكم جميعا
على الكود

  • بعد 10 شهور...
بتاريخ:

بجد نفعتنى كتير فى عمليه حسابيه بالنسبه لى بجد شكراااا يااخوانى

بتاريخ:

SELECT TRUNC(MONTHS_BETWEEN('30-AUG-2010',SYSDATE)) MONTHS,TRUNC((months_between('30-JUL-2010',sysdate)) /12*365) Day,trunc(months_between('30-JUL-2010',sysdate )) /12 FROM DUAL;


هذا هو الكود الصحيح بالتحديد لحساب الايام
حيث كان فيها خطأ بسيط وقمت بتلوينه باللون الاحمر

تم تعديل بواسطة rose_4_pretty

  • بعد 4 شهور...
بتاريخ:
  • كاتب الموضوع

اشكركم يا اخوان على كلامكم الطيب وحقيقه تشرفت بحضوركم وتعليقاتكم في هذا الموضوع

بتاريخ:


جزااااااكم الله ألف خيرررررر جميعاً يا أخواااان على الحلول الرائعه

كل الشكر لكم .. تقبلوا تحيااااااااتي

بتاريخ:

أنا وصلت لحل آخر بيطلع الناتج عبارة عن عدد الشهور و الأيام و الأسابيع و السنين....إلخ بين تاريخين بمعنا أنا عندي تاريخ الميلاد 25/5/1988 و تاريخ اليوم 24/11/2010
الكود إللي توصلت له بفضل الله هيجين كام يوم بين التاريخين 32400 يوم وكام إسبوع 1080 أٍسبوع وكام شهر 270 شهر وكام سنة 22,5 سنة.....إلخ
الكود:

select 
round(months_between(sysdate, '25/05/1988'))/12 as السنين,
round(months_between(sysdate, '25/05/1988')) as الشهور, 
round(months_between(sysdate, '25/05/1988'))*4 as الأسبيع,
round(months_between(sysdate, '25/05/1988'))*4*30 as اليوم, 
round(months_between(sysdate, '25/05/1988'))*4*30*24 الساعات, 
round(months_between(sysdate, '25/05/1988'))*4*30*24*60 الثواني, 
round(months_between(sysdate, '25/05/1988'))*4*30*24*60*60 الاحظات,
add_months('25/05/1988', 276)as الميلاد,
to_char(sysdate, 'day   -   month   - yyyy  ')تفقيط
from dual 

بتاريخ:
  • كاتب الموضوع

جزاك الله خير يا اخ HGAGG على هذه المشاركه الطيبة

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.