Всего на сайте:
282 тыс. 988 статей

Главная | Информатика

Объединение таблиц  Просмотрен 45

В более сложных базах данных существует несколько таблиц, связанных друг с другом. Например, представлены две таблицы о видеоиграх (video_games) и разработчиков видеоигр (game_developers).

Таблица video_games

Таблица game_developers

В таблице video_games есть колонка разработчик (developer_id), но в ней содержится целое число, а не имя разработчика. Это число представляет собой идентификатор (id) соответствующего разработчика из таблицы разработчиков игр (game_developers), связывая логически два списка, что позволяет нам использовать информацию, хранящуюся в них обоих одновременно.

Если нужно создать запрос, возвращающий все, что нужно знать об играх, можно использовать INNER JOIN для связи колонок из обеих таблиц.

SELECT video_games.name,

video_games.genre,

game_developers.name,

game_developers.country

FROM video_games

INNER JOIN game_developers

ON video_games.developer_id = game_developers.id;

Это самый простой и наиболее распространенный тип JOIN. Есть несколько других вариантов.

Алиасы

В примере две колонки называемые name. Можно установить псевдоним одного из повторяющихся столбцов, например, name из таблицы game_developers будет называться developer.

Можно сократить запрос задав псевдонимы имен таблиц: video_games назовем games, game_developers – devs :

SELECT games.name,

games.genre,

devs.name AS developer,

devs.country

FROM video_games AS games

INNER JOIN game_developers AS devs

ON games.developer_id = devs.id;

Предыдущая статья:Расширенная фильтрация данных. AND и OR Следующая статья:Обновление данных
page speed (0.0122 sec, direct)