当前位置:Gxlcms > PHP教程 > 怎么只用一行数据表示两个人的好友关系?

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

时间:2021-07-01 10:21:17 帮助过:30人阅读

user_id f_id dateline
1 2 time
2 1 time

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

获取我的好友:

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

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

回复内容:

user_id f_id dateline
1 2 time
2 1 time

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

获取我的好友:

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

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

新增一列用来表明两人友好关系
比如用数字(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表示两个人的好友关系

人气教程排行