Heim > Datenbank > MySQL-Tutorial > Hauptteil

So ersetzen Sie Zeitfelder durch MYSQL, ohne Stunden, Minuten und Sekunden zu ändern

巴扎黑
Freigeben: 2017-07-19 13:10:55
Original
1355 Leute haben es durchsucht
写法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';
Nach dem Login kopieren
写法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';
Nach dem Login kopieren
写法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';
Nach dem Login kopieren

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';
Nach dem Login kopieren

Falscher Schreibfehler: [Err] 1093 – Sie können nicht angeben Zieltabelle 'sas_order_supply_month_pay' für Aktualisierung in FROM-Klausel

Fehleranalyse:

Fehleranweisung: (

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage