In deiner Abfrage machst du natürlich auch ein Join auf die Usertable.
Du brauchst ja den Namen des Users usw.
Ich dachte das wäre klar.
Deine Beziehung zur Usertabelle ist ja bei jedem eingefügten Datensatz doppelt vorhanden, da du ja die Freunde abfragst.
Ich mache das z.B. so das ich wenn sich Freundschaften auflösen diesen Datensatz wieder entferne.
Du kannst natürlich auch um eine History aufzubauen den Datensatz da lassen und ihn mit einem weiteren Flag versehen.
(So mache ich das ich hau die ehemaligen befreundeten in eine Historytable damit der User nachsehen kann ob dieser schon mal mit ihm befreundet war.)
Desweiteren habe ich aufgrund der Tatsache das ich Intern ein Benachrichtigungssystem habe auch einen Flag der sich Spam nennt, so kann ich im Admin sehen welcher User mehreren mit z.B. Werbemails auf den Keks geht und diesen dann entsprechend Einschränken oder bestrafen.

Das bleibt ganz deiner Fantasie so wie deiner Art Daten zu sammeln überlassen.

MfG