MYSQL替換時間 年月日 字段,時分秒不變

2022-04-09 01:52:29 字數 2060 閱讀 4741

寫法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

';

說明: sas_order_supply_month_pay表的receive_time欄位格式為"2017-06-16 12:13:16",sas_task_supply_month_pay_period表的period_end欄位格式為"2017-07-12",

執行後receive_time修改為"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

';

錯誤寫法報錯:[err] 1093 - you can't specify target table 'sas_order_supply_month_pay' for update in from clause

錯誤分析:

錯誤語句:(select date_format(receive_time,'%h:%i:%s') fromsas_order_supply_month_pay where order_code='po201707130115')

此語句單獨執行是可以的,但是合在一起執行報錯,猜測:修改表和子查詢不能是同乙個表?

MYSQL替換時間 年月日 字段時分秒不變例項解析

寫法1 update sas order supply month pay set rec y m d select period end from sas task supply month pay period where belong 1729 and create time like 201...

ORACLE時間欄位取年 月 日 季度

oracle時間欄位取年 月 日 季度 得到年月,日,季度 select to char 日期,yyyymmdd date id,to char 日期,yyyy 年 to char 日期,mm 月 to char 日期,dd 日 date name,to char 日期,yyyymm month i...

js 時間年月日

var date new date 快速獲取年月日的方法 new date new date 8 3600 1000 tojson substr 0,19 replace t date.getyear 獲取當前年份 2位 date.getfullyear 獲取完整的年份 4位 date.getmon...