怎么只用一行数据表示两个人的好友关系?

user_id f_id dateline
1 2 time
2 1 time

现在是这样的方法。
SQL如下:

获取我的好友:

sqlselect * from frieds where user_id = :id or f_id= :id

怎么用一行数据来表示用户关系?

阅读 4.9k
3 个回答

新增一列用来表明两人友好关系
比如用数字(0,1,2),表示两人的关系(陌生,认识,熟知)

新建表 relation

字段 id tinyint auto_increment primary key
字段 relation varchar 
user_id_1 user_id_2 relation
a b 1
a c 2
a d 3

relation: 1表示user_id_1是user_id_2的好友,2表示user_id_2是user_id_1的好友,3表示user_id_1和user_id_2互为好友.

稍微优化一下relation的表示值的话,可以这个样子表示01,10,11表示两个人的好友关系

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题