写法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';
Hinweis: Das Feldformat RECEIVE_TIME der Tabelle sas_order_supply_month_pay ist „2017-06-16“. 12: 13:16“, das Feldformat PERIOD_END der Tabelle sas_task_supply_month_pay_period ist „2017-07-12“,
Nach der Ausführung wird RECEIVE_TIME in „2017-“ geändert. 07-12 12: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';
select DATE_FORMAT(RECEIVE_TIME,'%H:%i: %S') von sas_order_supply_month_pay wobei ORDER_CODE='PO201707130115')
Diese Anweisung kann einzeln ausgeführt werden, bei gemeinsamer Ausführung wird jedoch ein Fehler gemeldet. Vermutung: Ändern der Tabelle und des Unterabfrage kann nicht identisch sein. Eine Uhr?Das obige ist der detaillierte Inhalt vonSo ersetzen Sie Zeitfelder durch MYSQL, ohne Stunden, Minuten und Sekunden zu ändern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!