我有这张桌子:
ofmessagearchive (fromID, toID, message, sentDate)
我需要获取确定用户每次对话的最后 10 条消息。
示例:UserA 有两个朋友(UserB 和 UserC)
我需要获取与 UserB 的最后 10 条对话消息,以及与 UserC 的最后 10 条对话消息。
恐怕你不能在没有函数的 SQL 中得到它。
您可以使用此计划使用函数或 java 函数获取所有内容
1)获取用户A的所有用户
select distinct id from
(Select distinct toid as id from ofmessagearchive where fromID=UserA union
( select distinct fromid as id from ofmessagearchive where toID=UserA) ) as ids;
2)遍历该列表中的每个 id,然后选择最后 10 条消息/打印它。