sql >> Database teknologi >  >> RDS >> Mysql

Hvordan får jeg næste måneds dato fra dags dato og indsætter den i min database?

Du kan bruge PHP's strtotime() funktion:

// One month from today
$date = date('Y-m-d', strtotime('+1 month'));

// One month from a specific date
$date = date('Y-m-d', strtotime('+1 month', strtotime('2015-01-01')));

Bare bemærk, at +1 month er ikke altid beregnet intuitivt. Det ser ud til altid at tilføje det antal dage, der findes i den aktuelle måned.

Current Date  | +1 month
-----------------------------------------------------
2015-01-01    | 2015-02-01   (+31 days)
2015-01-15    | 2015-02-15   (+31 days)
2015-01-30    | 2015-03-02   (+31 days, skips Feb)
2015-01-31    | 2015-03-03   (+31 days, skips Feb)
2015-02-15    | 2015-03-15   (+28 days)
2015-03-31    | 2015-05-01   (+31 days, skips April)
2015-12-31    | 2016-01-31   (+31 days)

Nogle andre dato/tidsintervaller, som du kan bruge:

$date = date('Y-m-d'); // Initial date string to use in calculation

$date = date('Y-m-d', strtotime('+1 day', strtotime($date)));
$date = date('Y-m-d', strtotime('+1 week', strtotime($date)));
$date = date('Y-m-d', strtotime('+2 week', strtotime($date)));
$date = date('Y-m-d', strtotime('+1 month', strtotime($date)));
$date = date('Y-m-d', strtotime('+30 days', strtotime($date)));


  1. Hvordan accepterer jeg brugerinput i en loop i oracle 10g?

  2. SQLSTATE[HY093]:Ugyldigt parameternummer:parameter blev ikke defineret

  3. Hvad er præstationsimplikationerne af Oracle IN-klausul uden joinforbindelser?

  4. Opret parameteriseret VIEW i SQL Server 2008