站内短信:如何记录这条信息哪位用户阅读过,因为有的短信是一次发给多位用户,如何记录才能更高效呢?
站内短信问题:
比如:表 messageinfo 存储的是短信信息 :
---------------------------------
ID title 发送对象
23 关于公司制度.... 45,1001,1002,4006,2990,3544,2877
20 请假的的续 45,2003,5778,4500,3411
18 查收 6007
12 电话费 2099
11 报表 2009,3466,3122
-------------------------------------
假如我是用户ID 为 45 的用户,我看过了此条信息,要采取什么办法记录我看过了此条信息呢?
我的想法有两个:
1,在表 messageinfo 后面加一个字段: whoreadMessage, 把所有读过此信息的人的ID号全记录在里面,形如这样:45,67,2334,983
这样当用户 ID 为 45 的这读过此信息后,就把他的ID 45 写在这个字段里。
2,单独建一个表 "whoReadtable " 专门存储谁读过哪条信息,形如:
ID 信息ID号 读过此信息的用户ID
67 23 45
66 27 45
65 10 45
64 87 98
63 28 67
对这两种方法只是我想出来的,不知道效率如何,不过,我想当信息多了,用户多了后,这两种方法都有效率问题:
方法一:如果当用户真的有上万个用户,则在表 messageinfo 中 whoreadMessage字段将会存储上万人的 ID 号,这样行得通吗?
方法二:同样道理,当用户和信息达到上万的时候,将会在一个非常庞大的表里搜索谁读过哪条信息
这样的问题到底要如何解决才是正道呢?有过这方面经验的高手给指点一下,非常感谢!!
------解决方案--------------------建议新建一个表