Skip to content

waywatcher847/java-filmorate

Repository files navigation

java-filmorate

Схема базы данных

Краткое описание

Пользователи (users) - базовые профили с логином, email и датой рождения.

Социальные связи (friendships) - таблица для хранения заявок на дружбу. Флаг confirmed позволяет отличать принятые дружбы от ожидающих подтверждения.

Каталог фильмов (films) - содержит метаданные о кино, включая длительность и дату выхода. Связан с внешними справочниками: возрастными рейтингами (mpa_ratings) и жанрами (genres через связующую таблицу film_genres).

Активность (likes) - фиксирует, какие пользователи лайкнули какие фильмы.

Примеры запросов

Топ-5 самых популярных фильмов по количеству лайков:

SELECT
f.name AS film_title,
COUNT(l.user_id) AS likes_count
FROM films AS f
LEFT JOIN likes l ON f.film_id = l.film_id
GROUP BY f.film_id, f.name
ORDER BY likes_count DESC
LIMIT 5;

Пользователи, которые ещё не лайкнули ни одного фильма:

SELECT
u.user_id,
u.login,
u.email
FROM users AS u
LEFT JOIN likes l ON u.user_id = l.user_id
WHERE l.film_id IS NULL;

About

Template repository for Filmorate project.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages