Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
29 мар 2024, 01:59

Что такое "Левое соединение"

Автор Jahongir, 25 мар 2012, 16:53

0 Пользователей и 1 гость просматривают эту тему.

Jahongir

Что такое соединение, в часности так называемое левое соединение? Может дать ссылку, прочту

Public_enemy

Левое внешнее соединение
ЛЕВОЕ [ВНЕШНЕЕ] СОЕДИНЕНИЕ означает, что в результат запроса надо включить комбинации записей из обеих исходных таблиц, которые соответствуют указанному условию. Но, в отличие от внутреннего соединения, в результат запроса надо включить также еще и записи из первого (указанного слева от слова СОЕДИНЕНИЕ) источника, для которых не найдено соответствующих условию записей из второго источника.

Таким образом, в результат запроса будут включены все записи из первого источника; они будут соединены с записями из второго источника при выполнении указанного условия. Строки результата запроса, для которых не найдено соответствующих условию записей из второго источника, будут содержать NULL в полях, формируемых на основании записей из этого источника.

Ключевое слова ВНЕШНЕЕ можно не указывать вообще, оно повышает наглядность и удобочитаемость текста запроса.

Пример:
// В отчет необходимо вывести всех контрагентов, а для тех,
// кто является также банком – указать ссылку на банк.

ВЫБРАТЬ
   Контрагенты.Ссылка КАК Контрагент,
   Банки.Ссылка КАК Банк

ИЗ
   Справочник.Контрагенты КАК Контрагенты

ЛЕВОЕ ВНЕШНЕЕ СОЕДИНЕНИЕ
   Справочник.Банки КАК Банки

ПО
   Контрагенты.Наименование = Банки.Наименование

И еще вот ссылка http://www.forum.mista.ru/topic.php?id=369097

Язык запросов: Внутреннее и внешнее соединение

IronDemon

1 - 23.10.08 - 12:19

Внутреннее соединение

При внутреннем соединении в результат запроса попадают только записи удовлетворяющие заданному условию. В связанных таблицах обычно есть одно поле, значения в котором совпадают в двух таблицах, например, ссылка на элемент справочника Номенклатура. Допустим, необходимо выбрать все проданные товары и вывести их в отчет с указанием артикула. Это делает представленный ниже запрос:

Левое внешнее соединение

Конструкция ЛЕВОЕ [ВНЕШНЕЕ] СОЕДИНЕНИЕ означает, что в результат запроса надо включить комбинации записей из обеих исходных таблиц, которые соответствуют указанному условию. Но, в отличие от внутреннего соединения, в результат запроса надо включить еще и записи из первого источника (указанного слева от слова СОЕДИНЕНИЕ), для которых не найдено соответствующих условию записей из второго источника.

Правило. В случае левого внешнего соединения в результат запроса будут включены все записи из первого источника; они будут соединены с записями из второго источника при выполнении указанного условия. Строки результата запроса, для которых не найдено соответствующих условию записей из второго источника, будут содержать значение NULL в полях, формируемых на основании записей из этого источника.

Правое внешнее соединение

Конструкция ПРАВОЕ [ВНЕШНЕЕ] СОЕДИНЕНИЕ означает, что в результат запроса надо включить комбинации записей из обеих исходных таблиц, которые соответствуют указанному условию. Кроме того, в результат запроса надо включить еще и записи из второго источника (указанного справа от слова СОЕДИНЕНИЕ), для которых не найдено соответствующих условию записей из первого источника.

Правило. В случае правого внешнего соединения в результат запроса будут включены все записи из второго источника; они будут соединены с записями из первого источника при выполнении указанного условия. Строки результата запроса, для которых не найдено соответствующих условию записей из первого источника, будут содержать значение NULL в полях, формируемых на основании записей из этого источника.

Правое внешнее соединение полностью аналогично левому, за исключением того, что таблицы поменялись местами. Например, представленный ниже запрос эквивалентен предыдущему, но вместо левого, используется правое внешнее соединение:


Public_enemy


cska-fanat-kz

Цитата: Jane_V от 17 авг 2014, 23:45
Для меня как для новичка в этой теме было нереально трудно разобраться даже в основных понятиях. Спасибо Вам, что так толково объяснили тему, прям даже вопросов никаких не возникло, все как положено. Только одно мне не ясно, касательно интернет маркетинга? Я прочитала все, что касается создания интернет магазина вот тут - , но не припомню там ничего о Левом соединении, оно не играет роли?

Какой интеллектуальный спам нынче пошел! :ooifh:
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

MuI_I_Ika

cska-fanat-kz, сам удивляюсь. Чувствую надо будет обработину написать, которая будет автоматом таких людей удалять.

cska-fanat-kz

Примерно как...

"Форум ixbt.
xxx:Уважаемые друзья! К сожалению, я не понял ни слова в этой ветке. Но раз %username% участвует в обсуждении, то оно посвящено действительно важному вопросу, так что полностью поддерживаю все ваши разумные предложения и инициативы!"
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Kironten

Или с баша.
"Предыдущий пост не осилил. Но с автором абсолютно согласен. Такое количество букав не может не являться существенным аргументом."

Похожие темы (1)

Рейтинг@Mail.ru

Поиск