если вам нужно отслеживать события дружбы, у вас может быть Friends_id (скажем, вы хотите, чтобы в списке была указана самая последняя дружба в системе со ссылкой на детали), но если ваша модель данных не требует таких отношений, многостолбцовый первичный ключ будет просто в порядке. Вы можете создать его так:
create table friend (
user_id int,
friend_id int,
foreign key (user_id) references user(id),
foreign key (friend_id) references user(id),
primary key (user_id, friend_id)
);
будет индекс для обоих столбцов, индивидуально созданных ограничением внешнего ключа, и уникальный индекс из нескольких столбцов для user_id, friend_id.