create table
friendship(
user bigint,
friend bigint,
primary key(user, friend),
key(friend, user),
constraint `fk_user` foreign key (user) references user(id),
constraint `fk_friend` foreign key (friend) references user(id)
);
जब उपयोगकर्ता 1 उपयोगकर्ता 2 को मित्रता अनुरोध भेजता है, तो
. करेंinsert into friendship (user, friend) values (1,2);
यदि उपयोगकर्ता 2 अनुरोध को अस्वीकार करता है,
delete from friendship where user = 1 and friend = 2;
यदि उपयोगकर्ता 2 इसे स्वीकार करता है:
insert into friendship (user, friend) values (2,1);
फिर, दोस्ती को इस तरह पाया जा सकता है:
select f1.*
from friendship f1
inner join friendship f2 on f1.user = f2.friend and f1.friend = f2.user;
आप इस अंतिम क्वेरी के साथ एक दृश्य बना सकते हैं, यह आपको उपयोगकर्ताओं के मित्रों, या यहां तक कि मित्रों के मित्रों के लिए क्वेरी करने में मदद करेगा।