网络营销电子商务研究中心

网络营销电子商务研究中心 (https://www.0058.net/index.php)
-   MySQL (https://www.0058.net/forumdisplay.php?f=76)
-   -   Update a date value? (https://www.0058.net/showthread.php?t=5100)

Garwin 2015-04-19 08:56 AM

Update a date value?
 
What is the easiest way to update a date?

In my database I have a field called mydate that is setup as a timestamp datatype. (It as to be this datatype).

My dates are listed as either:
2013-07-25 00:00:00

or

0000-00-00 00:00:00

Meaning they either have a data or just zeroes, but never empty.

Edit: Thank you all! I sort of combined all that you said and made it work.

Now lets say I wanted to increase any give date with 10 days how would I accomplish that?

The first one, July 25th 2013 would become 2013-08-04 00:00:00 and the other would become 2013-06-18 00:00:00 (at the time of posting it's June the 8th).

How to?

Gasconade 2015-04-19 08:58 AM

With PHP you can do something like:

Code:

if($mydate_from_db > $present_date){
    $mydate_from_db = strtotime($mydate_from_db, '+ 10 days');
} else {
    $mydate_from_db = strtotime($present_date, '+ 10 days');
}

Or you can do it with mysql like:
Code:

UPDATE yourtable SET mydate = IF(mydate = '0000-00-00 00:00:00', '2013-06-18 00:00:00', DATE_ADD(mydate, INTERVAL 10 DAY));

Gastonville 2015-04-19 08:58 AM

You can do it in MySql directly:
Code:


UPDATE
    my_table
SET
    my_date = my_date + INTERVAL 10 DAY
WHERE
    DATE(my_date) >= '2013-06-01'



All times are GMT +8. The time now is 03:44 AM.

Powered by vBulletin Version 3.8.7
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.