如何在数据表中的两列之间获取数据?

时间:2016-01-14 09:44:07

标签: c# linq datatable between

如果我有两个这样的数据表:

1-penaltyrule

  ser  from-min  to-min  pen
   1     1         55     1
   2     56        90     2
   3     91        null   3

2- penaltyEmp

   ser  emp  tot-min 
    1   782   2
    2   672   67
    3   677   92
    4   56    7

我想用LINQ

为每个用户获取笔

我的意思是tot-min BETWEEN from-min AND to-min SELECT pen

我希望数据表具有以下结果:

emp   pen
782   1
672   2
677   3
56    1

3 个答案:

答案 0 :(得分:2)

您可以使用此查询:

document.getElementsByClassName

答案 1 :(得分:0)

这样的东西应该在LINQ中适用于你:(不要忘记包含System.Linq名称空间)。

var results = from emp in context.penaltyEmp
                  join rule in context.penaltyRule on emp.ser equals rule.ser
                  where emp.tot-min > rule.from-min && emp.tot-min < rule.to-min
                  select new { emp = emp.emp, pen = rule.pen };

答案 2 :(得分:0)

如果您使用EF

,可以使用此功能
   var data=(from a in db.penaltyEmp
             select new{
                  emp= a.emp,
                  pen= db.penaltyrule.Where(d=>d.from-min>a.tot-min && d.to-min==null?true:(d.to-min>a.tot-min)).Select(d=>d.pen).firstOrDefault()
                 });