Linq-sql类选择使用max

时间:2010-07-16 12:26:04

标签: linq-to-sql

我有一个表Employee它包含字段ename,eid,workid,date,work等..它存储分配给workid作为primarykey的员工的工作,所以同样的ename将在那里,所以我需要在哪里恢复数据ename =一个特定的名称和workid,必须是最大的....

请帮帮我

感谢

1 个答案:

答案 0 :(得分:0)

我强烈建议您将工作和员工分成不同的表,这样您就不会为每个工作项重复员工的详细信息。

所以在员工表上你有 - ename,eid(主键)

在工作台上你有 - workid(主键),日期,工作,eid(employee.eid的外键)

以上将允许您为每个员工拥有多个工作项,并且您不必为每个工作项重复员工详细信息(如姓名和ID)。

无论如何,要回答您的问题,您可以执行以下操作 -

var e = (from em in DataContext.Employees
               where em.ename = "John Smith"
               Select em).Max(x => x.workid);

但是,按照我的建议你会好得多,所以你检索员工的查询可能会这样 -

var e = from em in DataContext.Employees
        where em.name = "John Smith"
        Select em;