基于另一列批量更新数据表中的列

本文关键字:数据表 更新 于另一 | 更新日期: 2023-09-27 17:49:36

我有一个数据表,其中包含yyyymmdd格式的日期。我想向包含该列日期值的表中添加一个datetime列。

现在的问题是表包含很多记录,遍历所有记录需要一些时间。是否有一种方法来做批量更新或使用表达式从这篇文章?

类似:

table.Columns.Add("MyDate", typeof(DateTime)).Expression = 
DateTime.ParseExact("'strDateField'", "yyyymmdd", new CultureInfo("en-US"));

(上面的语句不编译这是预期的,但只发布为提供我想要实现的一个例子)

基于另一列批量更新数据表中的列

表达式使用。net公开的SQL函数限制集对数据表列进行操作,参考https://msdn.microsoft.com/en-us/library/system.data.datacolumn.expression(v=vs.110).aspx

您可以尝试如下安排

dt.Columns.Add("MyDate", GetType(Date)).Expression = "SUBSTRING(strDateField,5,2)+'/'+SUBSTRING(strDateField,7,2)+'/'+SUBSTRING(strDateField,1,4)";