推 jjjkkkooo:想不到感覺應該很簡單的查詢居然這麼複雜 囧" 06/28 23:08
※ 引述《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