如何在 DataColumn.Expression 中使用 CASE WHEN
本文关键字:CASE WHEN Expression DataColumn | 更新日期: 2023-09-27 18:35:05
我有一个包含 1 列的表:"状态"我想在另一列名为"操作"中添加,其值如下:
如果列状态 = '0',则操作 ='开始',如果列状态 = "1",则操作 ="就绪",如果列状态 = '2',则操作 ='Go',
如何添加带有此类表达式的列?
我尝试了以下方法,但它不起作用:
myDataTable.Columns.Add("Action", "CASE (WHEN [Status] = '0') THEN "Start")
引号不匹配,并且缺少 Add 方法的列类型参数。
此外,表达式似乎不支持 CASE 语句。 请改用嵌套 IIF:
试试这个:
workTable.Columns.Add("Action",
typeof(string),
"IIF([Status] = '0', 'Start', IIF([Status] = '1', 'Ready', 'Go'))");
文档:http://msdn.microsoft.com/en-us/library/system.data.datacolumn.expression.aspx