Anup
Anup

Reputation: 113

Add DATE and TIME fields to get DATETIME field in MySQL

I am trying to get a DATETIME field from a DATE and a TIME field. none of the functions in MYSQL seems useful.

Is somebody aware how to do this or that if this can even be done? :)

Upvotes: 11

Views: 12617

Answers (4)

Matt Sinclair
Matt Sinclair

Reputation: 1102

addtime(date_field, time_field)

Upvotes: 4

Timo Huovinen
Timo Huovinen

Reputation: 55643

Both of the other answers do not convert the date properly if use use a TIME of "838:00:00" which is a valid time according to the mysql manual

so instead you can try converting the time field to seconds and then adding them
for example:

date_field + INTERVAL TIME_TO_SEC(time_field) SECOND

This will convert the date accordingly

Upvotes: 9

Sadat
Sadat

Reputation: 3481

@Pekka is right.

Also you can use CONCAT_WS(seperator, val1, val2,....)

CONCAT_WS(' ', date_field,time_field)

Upvotes: 1

Pekka
Pekka

Reputation: 449555

It should be as easy as

UPDATE table SET datetime_field = CONCAT(date_field, " ", time_field);

Upvotes: 14

Related Questions