我是Oracle的新手.是否有一个builtin关键字执行SQL Server APPLY相同的工作?
假设我有这样的业务对象,
class Employee
{
public string name;
public int id;
public string desgination;
public int grade;
}
List<Employee> lstEmp = new List<Employee>()
{
new Employee() { name="A",desgination="SE",id=1},
new Employee() { name="b",desgination="TL",id=2},
new Employee() { name="c",desgination="PL",id=3},
new Employee() { name="d",desgination="SE",id=4},
new Employee() { name="e",desgination="SSE",id=5},
};
Run Code Online (Sandbox Code Playgroud)
如果我想将员工等级更新为3,其名称为"SE",那么我必须写这样的东西
lstEmp=lstEmp.Select(x =>
{
x.grade = (x.desgination == "SE") ? 3 : x.grade;
return x;
}).ToList();
Run Code Online (Sandbox Code Playgroud)
但是在使用select时,它会每次都生成新的employee对象,而不是更新现有的lstEmp,所以我必须将更新的列表重新分配给lstEmp.
在我看来,它经常更新大型更新时会影响性能.这有解决方法吗?