나는 사람들을 친구로 추가하는 기능을 넣은 커뮤니티 웹 사이트를 만들고 있습니다. 이친구 목록에서 친구 표시
+----+---------+-------+
| id | ppl_1 | ppl_2 |
+----+---------+-------+
| 1 | 5 | 7 |
| 2 | 13 | 5 |
+----+---------+-------+
id is simply the autoincrement field.
ppl_1 is one user's id
ppl_2 is another user's id
가 지금은 id가 내 친구 목록을보고 싶어 5 인 사용자입니다 생각처럼
지금 내 친구 테이블이 보인다. 내 ID가 ppl_1
또는 ppl_2
사이에있을 수 있기 때문에 어떻게 해결할 수 있습니까? 2 쿼리를 확인해야합니까? 그건 내가 사이트의 성능을 고려하는 것 같아 나쁜 것입니다 .. 아니면 하나의 쿼리 내에서 두 가지를 확인하기 위해 뭔가를해야합니까?
$me = $_SESSION['id'] ;
누구나 여기 좀 빛을 보여 고려?
'UNION'을 사용하면 1이 'ppl_1'의 친구를 선택하고 두 번째 친구가 'ppl_2'의 친구를 선택하는 2 개의 쿼리를 수행 할 수 있습니다. '친구로 선택 ppl_1 ... UNION ... 친구로 ppl_2 선택 ... ' – Sean
이 문제는 여러 번 해결되었습니다. [sql-join-help-for-friend-list] (대칭 - 대칭 - 다 대다 방법) (http://stackoverflow.com/questions/2203513/sql-join-help-for-friend-list) -many-relationship] (http://stackoverflow.com/questions/3550093/how-to-represent-symmetric-many-to-many-relationship) [how-should-i-design-a-relationship-table-for] -friendship] (http://dba.stackexchange.com/questions/10199/how-should-i-design-a-relationship-table-for-friendship) – abl