Martin Gallagher wrote:

Hi,

I'm trying to find the most efficient way of "linking" members to one
another in a social networking application.

Currently I link them using 2 separate fields for the members: id1, id2. So,
to find people in your network you would do:

I'm not sure exactly what it is you are doing but I think this may be it. You have a table of people and you want to know who is friends with who. I know 'friend' may not be the best term to use but it is easier to type. So I have my people table.

People{
 *PID,
 Name,
. . .
}

Then the Friend Table,

Friend{
*PID,
*FID
}

If you have person, John, with ID 234, and you want to know all his friends you can do this...
SELECT  f.FID, p.Name
FROM Friend f JOIN People p ON f.FID = p.PID
WHERE f.PID = 234

of course you have the problem where john has Joe as a friend but Joe doesn't have john as a friend. This seeming inconsistency, may or may not be a problem depending on exactly what kind of a relationship you are trying to define.
--
Chris W
KE5GIX

Gift Giving Made Easy
Get the gifts you want & give the gifts they want One stop wish list for any gift, from anywhere, for any occasion!
http://thewishzone.com


--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to