【问题标题】:Latest sent or received message (facebook style)最新发送或接收的消息(facebook 风格)
【发布时间】:2012-06-26 13:28:23
【问题描述】:
SELECT p.*, m.*
FROM  " . DB_PREFIX . "messages AS p, " . DB_PREFIX . "members AS m
WHERE p.member_id2='" . $SESSION->conf['member_id'] . "' AND p.member_id1=m.member_id
ORDER BY p.senddate DESC

我正在尝试为我的社交网站中的所有用户设置一个收件箱。我希望它的设置与 Facebook 完全一样,您在与每个用户的每次对话中只会看到一行。因此,您只会看到最新收到或发送给该用户的消息。

上面的代码是我目前拥有的,但它只是向我显示所有收到的消息。如何设置查询以查找最新发送或接收的消息(每个用户仅一行)?

member_id1 是发件人 member_id2 是接收者

这是我的桌子的屏幕截图 http://i.imgur.com/zY6fF.png

【问题讨论】:

  • 您可以使用示例表发布您的预期结果吗?

标签: mysql sql messages


【解决方案1】:
SELECT p.*, m.*
FROM  " . DB_PREFIX . "messages AS p, " . DB_PREFIX . "members AS m
WHERE p.member_id2='" . $SESSION->conf['member_id'] . "' AND p.member_id1=m.member_id
ORDER BY p.senddate DESC
LIMIT 1

【讨论】:

  • 这只是给我最新收到的来自任何用户的消息。我需要当前用户和他/她联系过的任何用户之间最新发送或接收的消息。查看您的 Facebook 消息收件箱。这可能会让您更好地了解我在寻找什么。
猜你喜欢
  • 1970-01-01
  • 2021-09-11
  • 1970-01-01
  • 2021-10-29
  • 2015-04-06
  • 2018-07-14
  • 1970-01-01
  • 1970-01-01
  • 2016-06-03
相关资源
最近更新 更多