Maison >base de données >tutoriel mysql >Comment remplacer les champs horaires par MYSQL sans changer les heures, les minutes et les secondes

Comment remplacer les champs horaires par MYSQL sans changer les heures, les minutes et les secondes

巴扎黑
巴扎黑original
2017-07-19 13:10:551368parcourir
写法1:update sas_order_supply_month_pay set RECEIVE_TIME=REPLACE(RECEIVE_TIME,DATE_FORMAT(RECEIVE_TIME,'%Y-%m-%d'),(select PERIOD_END from sas_task_supply_month_pay_period where belong='1729' and CREATE_TIME like '%2017-07-12%')) where ORDER_CODE='PO201707130115';
写法2:update sas_order_supply_month_pay set RECEIVE_TIME= ADDTIME ((select PERIOD_END from sas_task_supply_month_pay_period where belong='1729' and CREATE_TIME like '%2017-07-12%')+interval 0 hour,time(RECEIVE_TIME)) where ORDER_CODE='PO201707130115';
写法3:update sas_order_supply_month_pay set RECEIVE_TIME = concat((select PERIOD_END from sas_task_supply_month_pay_period where belong='1729' and CREATE_TIME like '%2017-07-12%'),' ',DATE_FORMAT(RECEIVE_TIME,'%H:%i:%S')) where ORDER_CODE='PO201707130115';

Remarque : Le format du champ RECEIVE_TIME de la table sas_order_supply_month_pay est "2017-06-16 12 : 13:16", le format du champ PERIOD_END de la table sas_task_supply_month_pay_period est "2017-07-12",

Après l'exécution, le RECEIVE_TIME est modifié en "2017- 07-1212:13:16".

错误写法:update sas_order_supply_month_pay set RECEIVE_TIME = DATE_FORMAT(concat((select PERIOD_END from sas_task_supply_month_pay_period where belong='1729' and CREATE_TIME like '%2017-07-12%'),' ',(select DATE_FORMAT(RECEIVE_TIME,'%H:%i:%S') from sas_order_supply_month_pay 
where ORDER_CODE='PO201707130115')),"yyyy-MM-dd %H:%i:%S") where ORDER_CODE='PO201707130115';

Erreur d'écriture : [Err] 1093 - Vous ne pouvez pas spécifier table cible 'sas_order_supply_month_pay' pour mise à jour dans la clause FROM

Analyse des erreurs :

Instruction d'erreur : (

select DATE_FORMAT(RECEIVE_TIME,'%H:%i : %S') de sas_order_supply_month_pay où ORDER_CODE='PO201707130115')

Cette instruction peut être exécutée individuellement, mais une erreur sera signalée lorsqu'elle est exécutée ensemble. Devinez : modification de la table et du. la sous-requête ne peut pas être la même. Une montre ?

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn