sql >> Databáze >  >> RDS >> Mysql

schéma databáze přátelství

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)
);

Když uživatel 1 odešle žádost o přátelství uživateli 2, udělejte

insert into friendship (user, friend) values (1,2);

Pokud uživatel 2 zamítne požadavek,

delete from friendship where user = 1 and friend = 2;

pokud to uživatel 2 přijme:

insert into friendship (user, friend) values (2,1);

Pak lze přátelství najít tímto způsobem:

select f1.* 
from friendship f1
inner join friendship f2 on f1.user = f2.friend and f1.friend = f2.user;

Pomocí tohoto posledního dotazu můžete vytvořit pohled, pomůže vám s hledáním přátel uživatelů nebo dokonce přátel přátel.



  1. Spring-boot webová aplikace po chvíli ztrácí schopnost připojit se k MySQL / RDS

  2. MariaDB Server 10.0.33 je nyní k dispozici

  3. Případová studie upgradu hardwaru databázového serveru SQL Server

  4. Použití SUM na FLOAT datech