Ik zou een linktabel hebben voor vrienden, of wat dan ook, met 2 kolommen die beide PK's zijn en beide FK's naar de User-tabel.
Beide kolommen zouden de UID zijn en u zou twee rijen per vriendrelatie hebben (A,B en B,A). Zolang beide kolommen PK's zijn, zou het nog steeds in het normale formaat moeten zijn (hoewel anderen vrij zijn om mij hierover te corrigeren)
Het is een iets complexere query, maar niets dat niet kan worden weggenomen door een opgeslagen procedure of een of andere zakelijke logica, en het heeft de normale indeling, wat meestal leuk is om te hebben.