作者smlboby (波比)
看板Database
标题Re: [SQL ] 类似Facebook加好友机制
时间Tue Jun 28 23:01:29 2011
※ 引述《jjjkkkooo (接科噎欧)》之铭言:
: 各位版友大家好
: 在下在开发类似社群的网站平台,惟独资料库苦手
: 急救章读了些书,简单查询不是大问题,但一遇到
: 稍微复杂的查询就当机好久,以下的问题就麻烦版
: 友们解答了,我的资料库是MySQL
: 我有一个名叫friend的Table如下:
: ------------
: user_id | friend_user_id
: ------------
: 1 | 2
: 1 | 3
: 1 | 4
: 1 | 5
: 2 | 1
: 3 | 5
: 由於加入好友机制是双向的,如果上以图为例
: 1加入2为好友,2也接受1的交友,这样二者才
: 是真正的好友关系,如果我现在要查询1的好友
: SQL语法该如何下?
: 我用了几个很笨的方法,其中一个是
: SELECT * FROM friend where user_id = 1 OR friend_user_id = 1
: ↑把上面这段当子查询,再查询....真的很笨
: 不知道有无好的解法?感谢回答 <(_ _)>
用自己 join 的方式作 ?!
T-SQL(请自行翻译) :
select MTable.*
from friend as MTable join friend as STable
on MTable.friend_user_id = STable.user_id
and MTable.user_id = STable.friend_user_id
and MTable.user_id = 1
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.193.216.209
1F:推 jjjkkkooo:想不到感觉应该很简单的查询居然这麽复杂 囧" 06/28 23:08