
–füüsiline seos – on liisatud Foreign key (constraint – piirang näiteks kontrollida diagrammil)
–loogiline seos – kui õigesti kirjutatada select joiniga
JOIN
select * from Employees join Department
ON Employees.DepartmentId=Department.Id

INNER JOIN
–sama nagu lihtne join
–näitab kõik department, kus on olemas väärtus
select e.Name, e.Salary, d.DepartmentName
from Employees e inner join Department d
ON e.DepartmentId=d.Id

LEFT JOIN
–näitab kõike DepartmentName (null väärtused)
select e.Name, e.Salary, d.DepartmentName
from Employees e left join Department d
ON e.DepartmentId=d.Id

RIGHT JOIN
–näitab DepartName, kus name on null
–right join = right outer join
select e.Name, e.Salary, d.DepartmentName
from Employees e right join Department d
ON e.DepartmentId=d.Id

OUTER JOIN
–näitab kõik väärtused kahest tabelist
select e.Name, e.Salary, d.DepartmentName
from Employees e full outer join Department d
ON e.DepartmentId=d.Id

CROSS JOIN
–näitab nii, et 1.tabeli väärtused * 2.tabeli väärtused
select Name, Salary, DepartmentName
from Employees cross join Department

näidata ainult need isikud, kellel departmentName on null:
select e.Name, e.Salary, d.DepartmentName
from Employees e LEFT JOIN Department d
on e.DepartmentId=d.Id
where d.DepartmentName is null;

JOIN
–näitab kõiki töötajaid tabelist Employees, kus managerID vastab id-le tabelist manager
select * from Employees join manager
ON Employees.managerID=manager.Id

LEFT JOIN
–näitab kõike ManagerName (null väärtused)
select e.managerID, m.managerName
from Employees e left join manager m
ON e.managerID=m.Id

RIGHT JOIN
–näitab managerName, kus name on null
from Employees e right join manager m
ON e.managerID=m.Id


