[英]update month column from date column in the same table SQL Server
我有一个具有交易日期 [DATETIME] 的数据,我正在尝试对每个交易行查询 go 并根据交易日期获取月份和年份,并更新月份列以获得大量交易。
例子
ID Trans_Date Month
01 01/01/2020 012020
02 02/01/2020 012020
03 01/05/2020 052020
有什么建议么?
使用计算列执行此操作:
alter table t add month as (format(trans_date, 'MMyyyy'));
您可以使用update
执行类似的操作。 但这是愚蠢的。 这些值在新行或对现有行的更新上将不正确。 对于计算列,值始终是正确的。
当然,您可以将其表示为update
:
update t
set month = format(trans_date, 'MMyyyy');
如果某些值已经正确,则添加一个where
子句: where month <> format(trans_date, 'MMyyyy')
。
您好只是设法这样做:
更新 [DB].[dbo].[TABLE] SET [MONTH]= FORMAT(TRANS_DATETIME,'yyyy0MM');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.