朋友系统php和mysql查询?

时间:2011-10-26 01:53:00

标签: php mysql

我想知道如何最好地为我的朋友系统布局我的数据库?我打算这样做,

 id (int) | friendID (int) | accepted (enum)

我认为应该如何做,只有一个问题:

  1. 当用户确认请求时,我应该将当前行枚举更改为是,然后为确认它的用户插入另一行吗?即;

    1 | 4 | yes
    4 | 1 | yes
    
  2. 或者有没有办法可以从一行中拉出两个关系而不插入另一个?

    即;

    1 | 4 | yes
    

1 个答案:

答案 0 :(得分:1)

在这种情况下,我认为最好为每个朋友插入两次,因为空间很便宜,并且你​​可能会比阅读它们更少地添加朋友。但是,如果您想节省空间,可以改变选择朋友的方式:

select friendId from friends where id = $userId

select friendId, id from friends where id=$userId or friendId=$userId

然后在php端,你会检查friendId或id是否是当前登录的用户等。