Open Sevda-FT opened 8 months ago
Select * From Person.Person
Select * From Person.BusinessEntityContact
Select * From Person.BusinessEntity
--==================
SELECT P.FirstName,P.LastName FROM Person.Person AS P
INNER JOIN Person.BusinessEntityContact AS BEC
ON P.BusinessEntityID=BEC.PersonID
INNER JOIN Person.BusinessEntity AS BE
ON BEC.BusinessEntityID=BE.BusinessEntityID
من یه جوین زدم برای این سه تا
BusinessEntityContact این حدول ببینین
کلید اصلیش ترکیب سه کلیده
وکلید خارجیش هم یکی از اون سه تا قرار داده
این کوئری هم نگاه کنید .
Select * From Person.Person
Select * From Person.PersonPhone
Select P.FirstName,P.LastName,PP.PhoneNumber From Person.Person AS P
INNER JOIN Person.PersonPhone AS PP
ON P.BusinessEntityID=PP.BusinessEntityID
SELECT
P.FirstName,
P.LastName,
(SELECT PP.PhoneNumber FROM Person.PersonPhone AS PP WHERE PP.BusinessEntityID = P.BusinessEntityID) AS PhoneNumber
FROM
Person.Person AS P;
این دو کوئری دقیقا مثل همن با دقت کوئری دومی رو ببین
اما کوئری اول که با جوین زدم بهینه تره
این کوئری هم بین پرسنل وکارمند ارتباط یک به یک
Select * From Person.Person
Select * From HumanResources.Employee
Select P.FirstName,P.LastName,E.JobTitle From Person.Person AS P
INNER JOIN HumanResources.Employee AS E
ON P.BusinessEntityID=E.BusinessEntityID
Select P.FirstName,P.LastName,E.JobTitle From Person.Person AS P
LEFT JOIN HumanResources.Employee AS E
ON P.BusinessEntityID=E.BusinessEntityID
Select P.FirstName,P.LastName,E.JobTitle From Person.Person AS P
RIGHT JOIN HumanResources.Employee AS E
ON P.BusinessEntityID=E.BusinessEntityID
اونی که LEFT هست ببینید واجرا کنید خروجی ببینید مهمه
برای ترکیب سطرهای دو یا چند جدول به کار می رود. INNER JOIN: رکوردهای مشترک در دو جدول را نمایش می دهد LEFT JOIN: تمام رکوردهای جدول سمت چپ و رکوردهای مشترک جدول سمت راست را نمایش می دهد RIGHT JOIN: تمام رکوردهای جدول سمت راست و رکوردهای مشترک جدول سمت چپ را نمایش می دهد FULL JOIN: تمام رکوردها را نمایش می دهد
SELECT * FROM tbl_1 INNER JOIN tbl_2