You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Friendship - Intersection table between users friend requests
№
Column Name
Description
Type
Key
Reference
1
id
Identifier
integer
PK
2
User_id
User Identifier
integer
FK
User
3
Friend_id
Friend Identifier
integer
FK
User
Like - Stores all user`s film likes
№
Column Name
Description
Type
Key
Reference
1
id
Identifier
integer
PK
2
Film_id
Film Identifier
integer
FK
Film
3
User_id
User Identifier
integer
FK
User
FilmGenre - Stores all film`s genres
№
Column Name
Description
Type
Key
Reference
1
Id
Identifier
integer
PK
2
Film_id
Film Identifier
integer
FK
Film
3
Genre_id
Genre Identifier
integer
FK
Genre
Genre - List of all Genres
№
Column Name
Description
Type
Key
Reference
1
id
Identifier
integer
PK
2
Name
Genre`s name
varchar
Rating - List of all ratings
№
Column Name
Description
Type
Key
Reference
1
id
Identifier
integer
PK
2
Code
Rating code
varchar
3
Description
Description
varchar
Query examples
Query for get all users
Select*from users
Query for specific user fields
SELECTu.ID,
u.LOGIN,
u.EMAILFROM USERS u
WHEREu.ID= ?
Query for amount of film likes
SELECTcount(*)
FROM LIKES l
WHEREl.FILM_ID= ?
Query for all user`s friends
SELECT*FROM USERS u
WHEREu.IDin
(SELECTf.FRIEND_IDFROM FRIENDSHIP f
WHEREf.USER_ID= ?)
Query for all users and their friends
SELECTu.IDas user_id,
u.nameas user_name,
u.LOGINas user_login,
u.EMAILas user_email,
u.BIRTHDATEas user_birthdate,
f.USER_IDas friend_id
FROM USERS u
LEFT JOIN FRIENDSHIP f onf.FRIEND_ID=u.ID