使用MYSQL实现收件箱功能

时间:2010-04-11 06:40:19

标签: mysql

所以我正在编写一个简单的收件箱私人消息系统。

我的表架构如下:

  • MESSAGEID
  • 消息
  • 发件人ID
  • 收件人ID
  • 发送日期
  • 读(0 =不,1 =是)

我可以通过将userID与receiverID相关联来显示用户的消息。但是,我还希望将他在收件箱中发送的消息显示给用户。

例如,他的收件箱应显示:

  

Darth Vader - 3条新消息
  卢克 - 0   新消息(0因为我读过   所有这些或我发给他的消息   并且他没有回复)。

但我只想出的是

  

Darth Vader - 3条新消息。

我可以获得有关如何完成此SQL调用的任何帮助吗?

编辑:清除混乱

我既不是卢克也不是达斯。我收到了来自darth的3条新消息,我已经向luke发送了一条消息。

编辑** 基本上我希望能够像短信应用程序一样制作收件箱,在那里你可以看到你刚刚在朋友的短信列表中发送的短信。

1 个答案:

答案 0 :(得分:0)

SELECT users.username, count(messageID) AS unread
FROM users, messages
WHERE messages.senderID=<USER ID>
AND messages.receiverID=users.userID
AND messages.read=0

为了确保我做对了,这个查询会显示我发送消息的所有用户,并计算那些尚未读取的消息的数量。