2014-07-12 2 views
-1

나는 클라이언트 친구 요청에서 얻을, 내 자신의 서버를 가지고 :
- 사례 1 : friendID를, 상태 :
user001은
1. 나는 두 colunms와 함께, 내 서버에 user001라는 테이블을 생성을 user002하는 친구 요청을 보냅니다 (허용, 차단 된 ..) 및 friendId 열의 값으로 "user002"를 삽입하십시오.

2. 그리고 user002라는 다른 테이블을 만들고 friendId 열의 값으로 user001을 삽입하십시오.

모든 사용자가 자신의 친구 목록이있는 테이블을 가지고 있기 때문에 좋은 방법입니까 아니면 다른 방법이 있습니까?
친구 목록과 다른 정보를 쉽게 찾을 수 있도록이 방법을 선택합니다. spicific 한 친구에 관해.친구 요청 및 우정 테이블, 괜찮습니까?

+4

그래서 1M 사용자의 경우 1M 테이블을 만드는 경향이 있습니까? 그건 끔찍한거야. – Rahul

+0

모든 질문에 대해 1-100을 입력하면이 사이트 등급이 내려갑니다. –

+0

아니요. 2M 테이블을 1M으로 만들지 않습니다. 반대쪽에서 복잡한 쿼리와 함께 1M 행으로 1 개의 테이블을 생성합니다! –

답변

0

UserId, friendId, Status 열이있는 테이블을 하나만 만들어야합니다. 그렇게하면 모든 데이터를 하나의 테이블에 저장할 수 있습니다. user1의 친구를 얻으려면 user1의 UserId를 필터링하십시오.

+0

그래, 그랬어. 문제는 : user001의 친구를 찾을 때 [uresID] colunm의 queued look for user001가 [friendID] colunm에있을 수 있으며 결과를 병합 할 수 없다 !! 나는 [USERID]와 다른 모습의 SELECT 문장을 만들어야 만한다. [friendID] –

+1

자기 결합에 대해 들어 보셨습니까? 당신은 그것을 사용할 수 있습니다. – Rahul

+0

이것은 내 마지막 질문에 stackoverflow, 도움을 주셔서 감사합니다. 하지만 내가 얻을 수있는 -1의 무서운 것을 묻지 못한다. –