Вероятно, существует таблица, в которой хранится отношение друга <->, скажем, "frnd_list", имеющее поля 'user_id', 'frnd_id'.
Всякий раз, когда пользователь добавляет другого пользователя в друзья, создаются две новые строки.
Например, предположим, что мой идентификатор 'deep9c', и я добавляю пользователя с идентификатором 'akash3b' в качестве моего друга, затем в таблице "frnd_list" создаются две новые строки со значениями ('deep9c', 'akash3b') и ( 'akash3b', 'deep9c').
Теперь, при отображении списка друзей для конкретного пользователя, простой sql сделает это: "выберите frnd_id из списка frnd_list, где user_id ="
где - идентификатор зарегистрированного пользователя (хранится как атрибут сеанса).