рубрики: Запросы | Дата: 31 января, 2016
Достаточно редко встречаются ситуации, когда в запросе используется только одна таблица. Гораздо чаще таблиц несколько и их требуется связывать между собой по определенным правилам. Для простоты будем рассматривать примеры на двух таблицах. Можно выделить 2 вида связи таблиц между собой. Это соединение и объединение.
В результате соединения получается итоговая таблица в которой часть полей (колонок) берется из одной таблицы, часть из другой. При этом необходимо выбрать одно или несколько полей по значению которых записи (строки) одной таблицы связываются с записями другой.
Допустим у нас есть две таблицы:
Код товара | Наименование | Страна |
---|---|---|
001 | Яблоки | Польша |
002 | Яблоки | Россия |
003 | Апельсины | Турция |
004 | Апельсины | Марокко |
и
Код товара | Цена, р. |
---|---|
001 | 120 |
002 | 100 |
003 | 210 |
004 | 190 |
Если мы хотим увидеть в одной таблице и наименование товара, и страну происхождения, и его цену, мы можем соединить эти две таблицы по полю «Код товара» и в результате получим следующую таблицу:
Код товара | Наименование | Страна | Цена, р. |
---|---|---|---|
001 | Яблоки | Польша | 120 |
002 | Яблоки | Россия | 100 |
003 | Апельсины | Турция | 210 |
004 | Апельсины | Марокко | 190 |
Таким образом соединение таблиц – это условно говоря соединение таблиц по горизонтали, когда одна или несколько колонок одной таблицы присоединяются справа или слева к колонкам другой таблицы. В языке запросов 1С для соединения таблиц исползуются операторы: ЛЕВОЕ СОЕДИНЕНИЕ, ПРАВОЕ СОЕДИНЕНИЕ, ВНУТРЕННЕЕ СОЕДИНЕНИЕ, ПОЛНОЕ СОЕДИНЕНИЕ.
В следующей статье соединения таблиц в запросах 1С рассмотрены более подробно.
При объединении таблиц мы располагаем записи (строки) одной таблицы под записями другой.
Допустим, что у нас есть таблица с овощами:
Овощи |
---|
Помидоры |
Огурцы |
и таблица с фруктами:
Фрукты |
---|
Яблоки |
Апельсины |
После объединения, мы получим следующую итоговую таблицу:
Овощи, фрукты |
---|
Помидоры |
Огурцы |
Яблоки |
Апельсины |
В языке запросов 1С для объединения таблиц используется оператор ОБЪЕДИНИТЬ
А вот здесь можно подробнее почитать про объединение таблиц в запросах 1С
Добавить комментарий