koddizayncom adlı üyeden alıntı: mesajı görüntüle
Bu iki tablo arasında many to one ilişki var. Yani her sayfanın bir kullanıcısı var ama her kullanıcının birden fazla sayfası olabilir.

Bir sayfayı çekerken o sayfa ile birlikte o sayfaya ait kullanıcı verisini de çekmek istiyorsan. Soldaki tabloyu (sayfalar) sağdaki tablo ile birleştirmek için LEFT JOIN kullanabilirsin. Ve ikinci tablodan çekmek istediğin sütunları belirtebilirsin.

SELECT mw_pages.*, mw_users.username as username, mw_users.first_name as firstname

FROM mw_pages

LEFT JOIN mw_users ON (mw_pages.user_id = mw_users.user_id)
Bu tüm sonuçları döndürür. İlk tablonun tüm sütunları ile ikinci tablonun seçilen sütunlarını döndürür. Test edemedim kodu ama incelersen "LEFT JOIN" yazdıktan sonraki kısımda iki tabloda eşleşen sütunları belirtiyoruz veritabanı o iki tablodaki user_id aynı olan satırları sanki tek tabloymuş gibi bize döndürüyor.

Kodu kendine uyarlayabilmen için şu adresi ziyaret edebilirsin. https://www.w3schools.com/sql/sql_join_left.asp

JOIN, IN, HAVING vs. bunları da araştırmanı tabsiye ederim sorgu performansını aşırı derecede artıracaktır. Çoğu şeyi veritabanı hallediyor zaten aslında.
Hocam o kullanıcıya ait sayfayı çektirmek istemiyorum, yapmak istediğim aynı facebooktaki etiketleme mantığı ile aynı örnek veriyorum Eser adında kullanıcım ve Test adında sayfam var, şuanda @eser yazıldığında o kişiyi etiketlemiş oluyor verileri çekip. Ancak @test yazdığımda test isimli kullanıcı olmadığı için hiçbir şey yapmıyor, ben hem sayfaları hemde kullanıcıyı dikkate alsın istiyorum. Bir sayfanın adı bir kullanıcının adı ile aynı olamaz platformumda, dolayısıyla test adında kullanıcı açılmışsa test adında sayfa, test adında sayfa açılmışsa test adında kullanıcı açılamaz.
Bu dediklerim dikkate alınacak olursa, ilettiğim koddaki users sorgusuna ek olarak pages sorgusu atayamaz mıyız?
Teşekkürler