[英]What is the easiest, simplest way to select the max of a column from a table using Entity Manager?
[英]Simplest way to select a column in table A that need info from table B?
我有兩張桌子:
表A存儲用戶信息:
Name | Sex | Location | Other | User_ID
表B存儲該消息的私人消息和發送者,接收者:
Message_content | Sender_ID | Receiver_ID | Message_ID
現在給定一個用戶(接收者)名稱,我想獲取消息內容和發件人的名稱,是否可以在一個簡單的查詢中完成它?
我下面的代碼只能獲取Message_content而不是發件人姓名:
$result = mysql_query("SELECT PersonalMsg.content FROM PersonalMsg
INNER JOIN UserDB ON UserDB.User_ID=PersonalMsg.Receiver_ID
WHERE UserDB.Name = '$userName'");
順便說一下,我剛開始使用表B,如果這個表的設計不好,請告訴我,無論如何我都沒有設計數據庫的經驗。 提前致謝!
再次在Sender_ID
上加入UserDB
表。
就像是:
SELECT p.Message_content, u2.Name FROM PersonalMsg p
LEFT JOIN UserDB u1 ON u1.User_ID=p.Receiver_ID
LEFT JOIN UserDB u2 ON u2.User_ID=p.Sender_ID
WHERE u1.Name = '$userName'
您必須在數據庫設計中使用表B中的表A Primary。 然后用
$resutl = "select a.name,b.Message_content from Table-A as a, Table-B as b where a.User_ID = b.User_ID";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.