iki tabloda birbiri ile ilişkli kayıtları listelerken tek sorgu kullanmak istediğimizde kullanacağımız yöntemin başında inner join  gelir. inner join ifadesi ile iki tablodaki belirtilen sütunların sadece eşleşen kayıtları gelir. inner join ifadesi yerine sadece joinde yazılabilir. fazla bi açıklama yapmadan doğrudan örneklemeye geçelim. iki tabloda ki ortak olan kayıtları listeleyen  inner join sorgusu ( select * - tüm alanları seçme) kullanıcılar tablosu [caption id="attachment_358" align="alignnone" width="227"] tüm kullanıcıları içeren tablomuz[/caption]   [caption id="attachment_359" align="alignnone" width="137"] tüm kursları içeren tablomuz[/caption] [code language="sql"]select * from kullanici inner join kurs on kullanici.kurs_id=kurs.id[/code] [caption id="attachment_357" align="alignnone" width="300"] inner join sorgusu sonucunda seçilen verilerimiz[/caption] php içerisinde kullanmak istediğimizde ise aşağıdaki kod bloğunu yazmamız gerekir. [code language="php"] <?php $sorgu = $pdo->query("select * from kullanici inner join kurs on kullanici.kurs_id=kurs.id"); $kullanicilar = $sorgu->fetchAll(PDO::FETCH_OBJ); foreach ($kullanicilar as $kullanici) { echo "Kullanıcı Adı :: ". $kullanici->ad ."<br />"; echo "Kurs Adı :: ". $kullanici->kurs_ad ."<br />"; } /* çıktısı Kullanıcı Adı :: Mustafa Yılmaz Kurs Adı :: php ... ... ... */ [/code] eğer sorgumuzu [code language="sql"]select kullanici.id,kullanici.ad,kullanici.kurs_id,kurs.kurs_ad from kullanici inner join kurs on kullanici.kurs_id=kurs.id[/code] kodları ile değiştirirsek. sadece seçtiğimiz kolonları getirir. [caption id="attachment_368" align="alignnone" width="300"] inner join ile sadece seçtiğimiz kolonların listesi[/caption]