Статья Автор: Деникина Н.В., Деникин А.В.

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

Ты — пилот корабля в космическом симуляторе. Твоя задача — покупать товары на одной планете и продавать на другой с максимальной прибылью.

Вся информация о мире хранится в 5 таблицах. Давай разберёмся, что где лежит.


Таблицы и их связи

stars
PK id
name
⟵ star_id ⟶
planets
PK id
name
FK star_id → stars.id
star_map
FK star_from_id → stars.id
FK star_to_id → stars.id
distance
product_types
PK id
name
⟵ FK ⟶
prices
FK planet_id → planets.id
FK product_type → product_types.id
buy_price
sell_price
amount

 

Что значат PK и FK?

PK (Primary Key) PK — уникальный номер каждой записи. Не повторяется. Как номер паспорта.
FK (Foreign Key) FK — ссылка на запись в другой таблице. Это «мостик» между таблицами.
Например: planets.star_id ссылается на stars.id — так мы знаем, к какой звезде относится планета.

 

Перед написанием SQL-запроса всегда смотри на схему и ищи «путь» между таблицами через FK → PK связи. Каждая такая связь - это один JOIN в запросе.
Печать