Оператор MySQL JOIN перекрестное соединение? - PullRequest
0 голосов
/ 18 ноября 2011

Я не очень хорош со старыми утверждениями JOIN и ищу небольшую дружескую помощь. У меня есть две таблицы, скажем, таблица Employee:

   LastName DepartmentID
Rafferty    31
Jones   33
Steinberg   33
Robinson    34
Smith   34
John    NULL

и таблица Department:

DepartmentID    DepartmentName
31  Sales
33  Engineering
34  Clerical
35  Marketing

если я хочу вернуть результаты, где DepartmentID=31 И только результаты, где Employee.DepartmentID = Department.DepartmentID, чтобы возвращаемый результат выглядел так:

Employee.LastName   Employee.DepartmentID   Department.DepartmentName
Rafferty    31  Sales

(мы можем отбросить один из идентификаторов DepartmentID, поскольку они одинаковы) - что за SQL-оператор этого достигнет?

Спасибо

Ответы [ 3 ]

1 голос
/ 18 ноября 2011
SELECT e.LastName, e.DepartmentID, d.DepartmentName
FROM Employee e
INNER JOIN Department d ON d.DepartmentID = e.DepartmentID
WHERE d.DepartmentID = 31
0 голосов
/ 18 ноября 2011
SELECT e.LastName, e.DeparmentID, d.DepartmentName
FROM employee AS e INNER JOIN department AS d ON e.DepartmentID = e.DepartmentID
WHERE e.DepartmentID = 31

Мы будем использовать INNER JOIN для сопоставления записей в каждой таблице, используя раздел ON -> приравнивая значения отступления между обеими таблицами.

0 голосов
/ 18 ноября 2011

Есть метафорическая рыба:

ВЫБРАТЬ * ОТ СОТРУДНИКА ВНУТРЕННЕГО СОЕДИНЕНИЯ по отделу employee.departmentId = департамент.departmentId ГДЕ отдел отдел = 31

А вот метафорический урок рыбалки:

http://www.w3schools.com/sql/sql_join.asp (просто нажмите «Далее»)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...