2014-01-15 74 views
0

我有一個包含有關用戶的各種信息(姓名,姓,名,.........),幷包含三列的表格友誼users表:找好友用戶

1. user_req:請求用戶的用戶名

2. user_acc:誰接受或拒絕作爲朋友請求的用戶的用戶名的

3.狀態:0,如果請求是未決的,1,如果user_req和user_acc是朋友

現在我想進行一個查詢,返回所有用戶(具有其所有特徵:名稱,姓氏,用戶名......)誰是給定用戶用戶名的朋友。

我必須在兩個表「朋友」和「用戶」之間建立連接,但是如何實現?

+4

通過閱讀這些文檔。你可以從這裏開始:http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html – fancyPants

+0

如果你想回答這個問題,請花點時間整理一下使其更具可讀性。因爲它站立這是一個非常低質量的問題http://stackoverflow.com/questions/how-to-ask – Liath

+0

你使用哪些DBMS? Postgres的?甲骨文? –

回答

0

類似下面應該做的伎倆:

select * from user, friendship where friendship.user_acc=? and friendship.user_req=user.name and friendship.status=1; 
+0

嘿,謝謝! :) – user245679

1

您可以使用此查詢:

SELECT u.* 
FROM user u 
INNER JOIN friendship f ON u.username=f.user_acc 
WHERE f.user_acc = ? AND f.status = 1 
+0

謝謝,我用過這個! – user245679

+0

不客氣:) – Sal00m