Tables: Users (id, name, sex) Friendships (user_id, friend_id, status)
If user(1) and user(2) are friends shoud I add two rows into friendships table?
1, 2, "best friends" 2, 1, "best friends"
Or is it enough to have one of these rows? Select * from friendships where user_id = 2 or friend_id = 2 ???
But if I have only one friendship row and I need to list all friens of user(2) How can I do it? I don't know which one "user_id" or "friend_id" is needed "data".
Of course, I can check: IF search_id != friend_id print (friend_id).user.name ELSE print (user_id).user.name But it is slow and stupid..