2011-06-10 39 views
6

addedbyuser, editedbyuser (diğer alanların sürü arasında) Ben olayların satır ile, bir tablo var ve her birine sahiptir, deletedbyuser Orada INT vardır ve belirli bir kullanıcıya users tabloya geri bakınız katılmak . Herhangi bir sorun yaşamadan alanlardan birine (addedbyuser) katılabiliyorum, geri kalanına nasıl katılacağım ve bunları php olarak nasıl referans alacağım?MySQL tabloları birden çok kez

olaylar tablosu:

eventid addedbyuser editedbyuser deletedbyuser 
1  1   2   3 

kullanıcıları tablosu:

id username 
1 name1 
2 name2 
3 name3 

Yani temel olarak, ben, düzenlenmiş, eklenen ve makale silinen kim isimlerini görüntülemek istediğiniz Bir SQL yapabilirsiniz sorgu? Böyle

cevap

16

şey:

select 
    evn.eventid, 
    us1.username as addedbyuser, 
    us2.username as editedbyuser, 
    us3.username as deletedbyuser, 
from events evn 
    join users as us1 on 
     evn.addedbyuser = us1.id 
    join users as us2 on 
     evn.editedbyuser = us2.id 
    join users as us3 on 
     evn.deletedbyuser = us3.id 
İlgili konular