Linq-sql классы для выбора с использованием max - PullRequest
0 голосов
/ 16 июля 2010

у меня есть таблица Employee, в которой есть поля ename, eid, workid, date, work и т. Д., В которых хранится работа, назначенная сотруднику с workid в качестве primarykey, поэтому там будут присутствовать те же enames, поэтому мне нужно получить данные, гдеename = конкретное имя и рабочий код для этого должно быть максимум ....

пожалуйста, помогите мне

спасибо

1 Ответ

0 голосов
/ 16 июля 2010

Я бы настоятельно рекомендовал разделить работу и сотрудников в отдельные таблицы, чтобы не дублировать данные о сотрудниках для каждого имеющегося у вас рабочего элемента.

Таким образом, на таблице сотрудников, которая у вас будет - ename,eid (первичный ключ)

и на рабочем столе, который у вас будет - рабочий идентификатор (первичный ключ), дата, работа, eid (внешний ключ для employee.eid)

Вышеуказанное позволиту вас должно быть несколько рабочих элементов для каждого сотрудника, и вам не нужно будет иметь дубликаты данных сотрудников (например, имя и идентификатор) для каждого рабочего элемента.

В любом случае, чтобы ответить на ваш вопрос, вы можете сделать следующее -

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;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...