Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

Oracle और Java में दिनांक में अंतर

तारीख एक ही हो सकती है लेकिन समय अलग हो सकता है। 139 दिनों में परिणामी जब आप मिलीसेकंड के माध्यम से गणना करते हैं। (जावा)

मेरा सुझाव है कि मिली का उपयोग न करें लेकिन गणना करने के लिए दिनों का उपयोग करें।

कुछ इस तरह

public long daysBetween(Calendar startDate, Calendar endDate) {
   Calendar date = (Calendar) startDate.clone();
   long daysBetween = 0;
   while (date.before(endDate)) {
      date.add(Calendar.DAY_OF_MONTH, 1);
      daysBetween++;
   }}

या

/**
     *
     * @param c1 from
     * @param c2 to
     * @return amount of days between from and to
     */
    public int diff(Calendar c1, Calendar c2) {
        int years = c2.get(Calendar.YEAR) - c1.get(Calendar.YEAR);
        if (years == 0) {
            return c2.get(Calendar.DAY_OF_YEAR) - c1.get(Calendar.DAY_OF_YEAR);
        } else {
            Calendar endOfYear =  Calendar.getInstance();
            endOfYear.set(Calendar.YEAR, c1.get(Calendar.YEAR));
            endOfYear.set(Calendar.MONTH, 11);
            endOfYear.set(Calendar.DAY_OF_MONTH, 31);
            int days = endOfYear.get(Calendar.DAY_OF_YEAR) - c1.get(Calendar.DAY_OF_YEAR);
            for (int i=1;i <years;i++) {
                endOfYear.add(Calendar.YEAR, 1);
                days += endOfYear.get(Calendar.DAY_OF_YEAR);
            }
            days += c2.get(Calendar.DAY_OF_YEAR);
            return days;
        }
    }

साइड नोट:पहला उदाहरण थोड़ा धीमा है फिर दूसरा, लेकिन अगर यह केवल छोटे अंतरों के लिए है तो यह उपेक्षित है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle SQL - एक तालिका में मान ढूँढ़ने के लिए जॉइन का उपयोग करना, न कि दूसरी तालिका में

  2. Oracle स्ट्रिंग से चर संख्या निकालें

  3. Oracle में सभी कैश्ड आइटम को कैसे साफ़ करें

  4. स्तंभ योग मान के आधार पर समूह पंक्तियाँ

  5. Oracle में अनुवाद (... का उपयोग करना) फ़ंक्शन