想咨询下,我现在每个群有一个群聊天记录表,一个群成员表,一个成员上线后,他就应该调用这个存储过程,来读取他下线这段时间的聊天记录,但是现在实现有些问题。
 我的大致思路是这样,首先判断他是否上线,若上线的话,把群聊天记录表中所有在他上次下线之后这次上线之前的所有记录返回,但是现在有两个问题:
1,存储过程怎么返回这么多聊天记录
2,如何判断时间在不在线这段时间中,因为我没有记录他上下线时间的表,是不是应该统一建一个如果我的想法不对 有人能给我提个比较简单实现的方法~ 谢谢各位了~~ 

解决方案 »

  1.   

    在用户基本信息表中记录下最后一次下线时间lastTime
    然后在用户登录的时候,去执行 select * from messages where xtime>=lasttime 即可。
      

  2.   


    我也大致是这么想的,那么我想问下,我返回的不是应该是他的聊天记录么,但是每次我都只能返回一个varchar类型的变量,那是不是这么考虑呢,再另外写一个存储过程,循环调用这个存储过程? 
      

  3.   


    我的意思是,如果想实现这个目的,我存储过程中的返回值怎么设?如果只是一个varchar类型的话,那么如果有多条记录的话又该怎么办呢?
      

  4.   

    查询啊。select * from table where `time`>上次下线时间 and `time`< 这次上线的时间
      

  5.   

    那条sql语句已经能查询出多条了。 怎么返回显示不是要在程序中控制吗?