دستور self join در SQL

  /  SQL   /  دستور SELF JOIN در SQL

دستور self join در SQL زیر مجموعه دستورات Join هست ، از این دستور برای ارتباط دادن یک جدول با خودش استفاده می کنیم.

نحوه استفاده از دستور SELF JOIN

SELECT column_name(s)
FROM table1 T1, table1 T2
WHERE condition;

در دستورات بالا T1 و T2 نام های مستعار ( alias ) برای همان جدول table1 می باشد.

نمونه جدول بانک اطلاعاتی

به عنوان مثال ما قصد داریم جدول "Customers" را که در اینجا لیست کرده ایم تعدادی از مقادیر رکورد های آن را با دستور SELF JOIN مقایسه کنیم.

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.05021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.05023Mexico

مثال برای دستور SELF JOIN در SQL

دستورات SQL زیر رکورد هایی را که مقدار ستون city آنها باهم برابر بوده و CustomerID آنها باهم متفاوت هست را بر می گرداند.

SELECT A.CustomerName AS CustomerName1, B.CustomerName AS CustomerName2, A.City
FROM Customers A, Customers B
WHERE A.CustomerID <> B.CustomerID
AND A.City = B.City
ORDER BY A.City;

نمونه خروجی دستورات بالا:

CustomerName1CustomerName2City
Matin BoronsiArman AhmadiMashhad
Reza JafariAmir Hosein SarajianMashhad
Abbas Bo azarMohammad Reza AghaeeShiraz
Hamed TaheriAhmad MosadeghIsfahan
Ali Mohammadi NejadHosein MirzaeeIsfahan
Akbar MoradiGhasem HasaniTehran

توجه: دقت داشته باشید که برای درک بهتر دستورات SQL حتماً کد های ذکر شده را برروی جداول خود تست کنید.

5/5 - (1 امتیاز)

برای دسترسی به آموزش های بیشتر و ویدیو های من ، کلمه کلیدی متین برونسی را داخل گوگل سرچ کنید.

ارسال یک نظر