A: 用户ID,用户名...
B: 用户ID,消息ID...

解决方案 »

  1.   

    其实我想问的是:
    1.在B表,同一条消息,有多条记录,仅"用户ID"字段不同;
    2.在B表,一条消息一条记录,"用户ID"字段是所有接收此消息的用户的ID,例如12,13,15,21
    中间用逗号隔开。
    3.没想好还用其它什么好方式?
    这些表参与了消息显示,以及用户接收消息统计,查询。
    想知道那种更合适点?
      

  2.   

    三个表就成了.用户表: 用户ID,用户名...
    消息表: 消息ID, 消息内容...关系表: 用户ID,消息ID
      

  3.   

    我认为应该这样设计。你说的用逗号分开,不符合字段的原子性(第一范式)
    A表:用户ID,信息ID ---为用户和消息联系表
    12,1
    13,1
    15,2
    16,2
    19,3
    12,3
    .....
    B表:消息id,消息内容  ---消息表
    1,'afda'
    2,'阿哥给分'
    3,'给分'
    .....
    c表:用户id,用户名 ---用户表
    12,'a'
    13,'b'
    .....
      

  4.   

    按 zjcxc(邹建) 的建三個表.
    然後用LEFT JOIN連接
      

  5.   

    三个表+一个视图,就可以满足楼主的要求三个表:用户表: 用户ID,用户名...
    消息表: 消息ID, 消息内容...
    关系表: 用户ID,消息ID一个视图:
    create view 用户消息
    as
    select u.*,i.*
    from 关系表 a
      join 用户表 u on a.用户id=u.用户id
      join 消息表 i on a.用户id=i.用户id
      

  6.   

    http://expert.csdn.net/Expert/TopicView1.asp?id=2637559