Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Привет  [new]
Александр1234567890
Member

Откуда:
Сообщений: 3
Привет всем, народ, помогите плиз..кто может че-нить рассказать про INNER JOIN в SQL? Как он работает?
16 июн 12, 18:34    [12724917]     Ответить | Цитировать Сообщить модератору
 Re: Привет  [new]
serg_tmb
Member

Откуда: ПГТ Васильки, аптека №3
Сообщений: 47745
Обычно так:
автор
INNER JOIN
Оператор внутреннего соединения INNER JOIN соединяет две таблицы, причём порядок таблиц для оператора неважен, поскольку оператор является симметричным.
Заголовок таблицы-результата является объединением (конкатенацией) заголовков соединяемых таблиц.
Тело результата логически формируется следующим образом. Каждая строка одной таблицы сопоставляется с каждой строкой второй таблицы, после чего для полученной «соединённой» строки проверяется условие соединения (вычисляется предикат соединения). Если условие истинно, в таблицу-результат добавляется соответствующая «соединённая» строка.
Описанный алгоритм действий является строго логическим, то есть он лишь объясняет результат, который должен получиться при выполнении операции, но не предписывает, чтобы конкретная СУБД выполняла соединение именно указанным образом. Существует множество способов реализации операции соединения, например соединение вложенными циклами (англ. inner loops join), соединение хэшированием (англ. hash join), соединение слиянием (англ. merge join). Единственное требование состоит в том, чтобы любая реализация логически давала такой же результат, как при применении описанного алгоритма.
SELECT *
FROM
Person
INNER JOIN
City
ON Person.CityId = City.Id

Person.Name Person.CityId City.Id City.Name
Андрей 1 1 Москва
Леонид 2 2 Санкт-Петербург
Сергей 1 1 Москва


16 июн 12, 18:45    [12724938]     Ответить | Цитировать Сообщить модератору
 Re: Привет  [new]
Александр1234567890
Member

Откуда:
Сообщений: 3
спасибо
16 июн 12, 18:56    [12724956]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить