Я прочитал множество постов в блоге и пока не нашел ясного и простого примера того, как выполнить ЛЕВОЕ ВНЕШНЕЕ СОЕДИНЕНИЕ между двумя таблицами. Статья Wikipedia о соединениях Join (SQL) предоставляет следующую простую модель:
CREATE TABLE `employee` (
`LastName` varchar(25),
`DepartmentID` int(4),
UNIQUE KEY `LastName` (`LastName`)
);
CREATE TABLE `department` (
`DepartmentID` int(4),
`DepartmentName` varchar(25),
UNIQUE KEY `DepartmentID` (`DepartmentID`)
);
Предположим, у нас был EmployeeSet в качестве контейнера для сотрудников ObjectSet<Employee> EmployeeSet
и DepartmentSet ObjectSet<Department> DepartmentSet
. Как бы вы выполнили следующий запрос, используя Linq?
SELECT LastName, DepartmentName
FROM employee e
LEFT JOIN department d
ON e.DepartmentID = d.DepartmentID