2011-03-10 83 views
-1
I have a table named USERS: 
userID userName 
1  Foo 
2  Bar 
3  Foobar 

I also have a table named MAIL: 
mailID senderID recipientID subject  messageBody 
1   1   2   Hello  testtesttest 
2   1   3   Hello2  test1test1test1 

我有一個領域發件人,收件人,主題和郵件正文形式。 我的問題是,我怎麼能爲了返回從郵件表中的條目說進入mailID = 1,以填補包含用戶名的實際名稱,主題和郵件正文中的字段實現 查詢?數據庫,查詢實現

+0

這是在郵件外鍵? senderID或者recipientID? – Ramy 2011-03-10 22:03:03

+0

你想知道'insert'聲明? – Tim 2011-03-10 22:04:57

+0

無不是INSERT語句,只是想從數據庫中查看結果,謝謝。 – 2011-03-10 22:10:04

回答

2
 
SELECT m.mailid, 
     m.subject, 
     sender.userName, 
     recepient.userName 
FROM mail m 
    JOIN users sender ON m.senderID = sender.userID 
    JOIN users recepient ON m.recepientID = recepient.userID 
+0

謝謝你,你的答案是非常有益的。 – 2011-03-10 22:15:49

1
select username, subject, messageBody from Mail m inner join users u on m.recipientid (or senderid) = u.userid where entryid = 1 

應該這樣做。

+0

感謝您的快速響應。 – 2011-03-10 22:11:46

2

這將是(沒有你的特定的DBMS的語法特性)

select s.userName, r.userName, m.subject, m.messageBody 
    from mail m 
    inner join users s on m.senderID = s.ID 
    inner join users r on m.senderID = r.ID 
+0

謝謝,現在弄明白了,這個例子是一個普通的人,但我得到的總體思路。 – 2011-03-10 22:16:44