2014-08-11 4 views
0

У меня есть таблица под названием time_table со следующими столбцамиMySQL Обновление с заявлением Выберите из тех же таблиц

-------------------------- 
time_table 
-------------------------- 
col_name | type 
id  | int 
user_time| datetime 

Этой таблица содержит записи в нем. Когда я обновил таблицу:

-------------------------- 
time_table 
-------------------------- 
col_name | type 
id  | int 
user_time| datetime 
utc_time | datetime 

Я хочу, чтобы выбрать все столбцы user_time, получить его эквивалент UTC и обновить столбец utc_time в одном запросе.

Я пробовал этот запрос, но он не работал.

UPDATE time_table p1, ( 
SELECT id, CONVERT_TZ(user_time,'+00:00','+05:00') AS newtime 
FROM time_table sp WHERE sp.id=p1.id) AS p2 
SET p1.utc_time = p2.newtime 
WHERE p1.id = p2.id 

Я знаю, что с моим запросом что-то не так, но я не знаю, что с ним не так. Какие-либо предложения? Это было бы большой помощью.

+0

почему вы присоединиться? нет необходимости делать это – CodeFanatic

ответ

2

Вам не нужно присоединиться к

UPDATE time_table 
SET utc_time = CONVERT_TZ(user_time, '+00:00','+05:00') 
+0

WOW! Я не могу поверить, что все было так просто! Спасибо чувак! –

Смежные вопросы