Pages

Monday, July 26, 2010

How to change any date format to DATE datatype in MySQL (Insert or Update)

 ----

Use this function:  STR_TO_DATE('date', 'format')

This accepts two parameters: date and format where date is the input raw date you want to change and format is the corresponding format relative to date that you want to change.

For example:
INSERT INTO table(date_field) VALUES(STR_TO_DATE('December 8, 2010','%M %d,%Y'));

Note: table is the name of the table in database and date_field is the name of field in DATE datatype.

The statement above shows 2 parameters date as 'December 8, 2010' and format '%M %d, %Y'. The format is the exact format of the date, so that the mysql knows from what format will it convert the date  to DATE datatype format which is '%y-%m-%d'.

Other valid examples are:
INSERT INTO table(date_field) VALUES(STR_TO_DATE('12-31-2004', '%m-%d-%Y'));
INSERT INTO table(date_field) VALUES(STR_TO_DATE('12/31/2004', '%m/%d/%Y'));
UPDATE table SET date_field =  STR_TO_DATE('Dec 31, 2004', '%b %d, %Y');

----

2 comments:

Anonymous said...

HI :D

Anonymous said...

i was looking for these reserved words in mysql.. and i accidentally bumped into your blog which was updated a year ago :D hi :D see yaa.. (thesis-making)

Post a Comment