Я пытаюсь обновить столбец в таблице на основе данных (которые постоянно обновляются) во временной таблице (через импорт csv). Датой во временной таблице является формат VARCHAR («2/20/2014 10:29:25 AM»), а дата в таблице, которую я хочу обновить, имеет тип DATETIME.Как преобразовать дату и обновить объединенную таблицу
Я не уверен, как правильно присоединиться к этим двум таблицам, чтобы обновить даты в постоянной таблице на основе текущей даты, отображаемой в таблице temp ... используя product_sku (в обеих таблицах) как поле объединения.
Вот что я пробовал, но продолжаю получать ошибку SQL ('# 1064 - У вас есть ошибка в синтаксисе SQL, проверьте руководство, соответствующее вашей версии сервера MySQL, для правильного синтаксиса, используемого рядом с' FROM. ..)
Update t0
set t0.product_available_date =
(SELECT STR_TO_DATE(`t1.product_available_date`,
'%c/%e/%Y %H:%i'))
FROM cpg5443_virtuemart_products as t0
join cpg5443_virtuemart_products_temp as t1
on t0.product_sku = t1.product_sku
Where t0.product_sku='002-765-AS'
Вы видите какие-либо вопиющие ошибки и можете ли вы посоветовать, как я могу исправить? В конце концов, мне нужно, чтобы в заявлении, где говорилось «где t0.product_sku = t1.product_sku», надеется, что этот столбец обновится для каждой записи, основанной на дате в таблице temp. Пока что я просто тестирую обновление с помощью одного product_sku.
Что-то еще не хватает, я думаю (я теперь получаю ошибку, которая говорит «# 1146 - Таблица [account_dbname] .t0 не существует» Да, у меня есть. отправил весь код, который я пробовал. Нужен ли мне дополнительный «Выбор»? Любая идея, что мне не хватает? –
Ну, ошибка говорит о том, что таблица не существует. Убедитесь, что вы выполняете запрос в правильном базы данных, то есть где эта таблица t0 существует. –
Также читайте это: http://stackoverflow.com/q/6342201/3248346 –