ホームページ  >  記事  >  バックエンド開発  >  怎么只用一行数据表示两个人的好友关系?

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

WBOY
WBOYオリジナル
2016-06-06 20:36:511178ブラウズ

user_id f_id dateline
1 2 time
2 1 time

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

获取我的好友:

<code>sql</code><code>select * from frieds where user_id = :id or f_id= :id
</code>

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

回复内容:

user_id f_id dateline
1 2 time
2 1 time

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

获取我的好友:

<code>sql</code><code>select * from frieds where user_id = :id or f_id= :id
</code>

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

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

新建表 relation

<code>字段 id tinyint auto_increment primary key
字段 relation varchar 
</code>

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表示两个人的好友关系

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。