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

MySQL महीने, साल में तारीखों की सूची प्राप्त करें

यहाँ इस प्रश्न का mysql/java समाधान है।

तालिका विवरण बनाएँ:

CREATE TABLE `date_table` (
  `ID` bigint(20) NOT NULL AUTO_INCREMENT,
  `date` date NOT NULL,
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=latin1;

जावा कोड:

public static void main(String[] args) throws ClassNotFoundException, SQLException {
        Database db = new Database("root", "root01", "test-db", "10.10.5.11");
        db.connect();
        int start_year = 2013;
        int end_year = 2100;
        for (int year = start_year; year < end_year; year++) {
            for (int month = 1; month <= 12; month++) {
                int days_in_month = 0;
                switch (month) {
                    case 1: { //January
                        days_in_month = 31;
                        break;
                    }
                    case 2: { //February
                        if (year % 4 == 0) {
                            days_in_month = 29;
                        } else {
                            days_in_month = 28;
                        }
                        break;
                    }
                    case 3: { //March
                        days_in_month = 31;
                        break;
                    }
                    case 4: { //April
                        days_in_month = 30;
                        break;
                    }
                    case 5: { //May
                        days_in_month = 31;
                        break;
                    }
                    case 6: { //June
                        days_in_month = 30;
                        break;
                    }
                    case 7: { //July
                        days_in_month = 31;
                        break;
                    }
                    case 8: { //August
                        days_in_month = 31;
                        break;
                    }
                    case 9: { //September
                        days_in_month = 30;
                        break;
                    }
                    case 10: { //October
                        days_in_month = 31;
                        break;
                    }
                    case 11: { //November
                        days_in_month = 30;
                        break;
                    }
                    case 12: { //December
                        days_in_month = 31;
                        break;
                    }
                }
                for (int day = 1; day <= days_in_month; day++) {
                    db.executeInsert("INSERT INTO date_table (date) VALUES ('" + year + "-" + month + "-" + day + "');");
                }
            }
            System.out.println("YEAR: " + year + " FINISHED");
        }
    }

मुझे इस sql का उपयोग करके तिथियों की सूची मिलती है:

SELECT * FROM date_table WHERE YEAR(date) = 2014 AND MONTH(date) = 2;

आशा है कि कोई इसका उपयोग करेगा :)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. अजगर के साथ *.sql फ़ाइल निष्पादित करें MySQLdb

  2. यह क्वेरी केवल एक पंक्ति का चयन क्यों करती है?

  3. पीडीओ मल्टी-क्वेरी SQLSTATE [HY000]:सामान्य त्रुटि

  4. mysql से php से xml खाली उम्र दिखाता है

  5. कोडनिर्देशक सक्रिय रिकॉर्ड नेस्टेड क्वेरी