|
Механика соединений в запросе | ☑ | ||
---|---|---|---|---|
0
AXZ
10.08.22
✎
09:50
|
Народ привет! Вопрос на засыпку: по каком принципу работает левый (внутренний, правый) джойнты к документам/регистрам/итдитп?
Например левый джойнт к справочнику по реквизиту сначала формирует полную таблицу, а уже потом подставляет к основной? Или формирует каждый раз новую таблицу с отбором из ПО? Или же берет список значений основной таблице и по ней формирует таблицу соединяемого документа, где есть все строки, подходящие условию? |
|||
1
АгентБезопасной Нацио
10.08.22
✎
09:53
|
смотри в план запроса.
|
|||
2
H A D G E H O G s
10.08.22
✎
09:54
|
||||
3
СеменовСемен
10.08.22
✎
10:03
|
Nested Loop, Merge Join, Hash Join
|
|||
4
AXZ
10.08.22
✎
10:07
|
(3) Я имею ввиду левое соединение запроса
|
|||
5
СеменовСемен
10.08.22
✎
10:08
|
(4) это алгоритмы соединения. Какое левое или правое не имеет значения
|
|||
6
AXZ
10.08.22
✎
10:10
|
(5) И все же, по какому из алгоритмов достает данные 1Ска? ПО одному из или по каждому?
|
|||
7
nicxxx
10.08.22
✎
10:13
|
(0)джойнт? два раза. это не опечатка.
(6)вам уже ответили в 3 и 5 1С делает соединения так, как это делает СУБД, где она развернута Можно тут почитать https://www.red-gate.com/simple-talk/books/sql-server-execution-plans-third-edition-by-grant-fritchey/ |
|||
8
АгентБезопасной Нацио
10.08.22
✎
10:18
|
(7) и не у него одного этот "джойнт"
>>1С делает соединения так, как это делает СУБД, где она развернута - а может, он именно про 1с-ную реализацию на файловой, например :-) хотя особо сути это не меняет. |
|||
9
nicxxx
10.08.22
✎
10:24
|
(8)я бы такого на работу не взял :)
Сомневаюсь, что для файлового варианта ЗАО 1С придумала какой-то свой мега-алгоритм :) |
|||
10
АгентБезопасной Нацио
10.08.22
✎
10:28
|
(9) может, как раз не "мега", а упрощенный... это у MSSQL/PG планировщики запроса шибко умные, а тут, может, примитивизировали (в ущерб производительности)? не знаю.
|
|||
11
Ненавижу 1С
гуру
10.08.22
✎
10:51
|
(6) 1C отправляет запрос в СУБД. Каждая СУБД сама решает какой алгоритм использовать
|
|||
12
Kassern
10.08.22
✎
10:54
|
(11) искусственный интеллект субд?) Или все же есть четкие алгоритмы субд в каком случае какой план запроса строить?
|
|||
13
Ненавижу 1С
гуру
10.08.22
✎
10:56
|
(12) искусственный интеллект это тоже четкие алгоритмы
|
|||
14
АгентБезопасной Нацио
10.08.22
✎
10:56
|
(12) зависит от наличия индексов, статистики и т.п. Что немного описано в (2)
|
|||
15
mikecool
10.08.22
✎
10:58
|
(0) механика такова - поля в соединении это шестеренки, они скручивают таблицы
|
|||
16
1Сергей
10.08.22
✎
11:44
|
Зачем вам это?
|
|||
17
Smallrat
10.08.22
✎
11:48
|
(15) скручивают таблицы в джойнт
|
|||
18
nicxxx
10.08.22
✎
13:45
|
(12) не то, чтобы ИИ, но вполне себе ОС: https://blog.sqlauthority.com/2015/11/11/sql-server-what-is-sql-server-operating-system/
|
|||
19
nicxxx
10.08.22
✎
13:45
|
(17) пять баллов! :))
|
|||
20
Chai Nic
10.08.22
✎
13:49
|
Возможно, речь идет о файловом движке встроенной СУБД. Вряд ли в 1с придумали что-то своё. Скорее всего, взяли логику из какой-нибудь СУБД с открытым кодом и применили на свою структуру хранения.
|
|||
21
alarm2020
10.08.22
✎
14:28
|
(7) Есть такое слово joint
|
|||
22
СеменовСемен
10.08.22
✎
14:36
|
(21) это существительное, а join - глагол.
скл - это типа человеческой речи. выбрать ..., присоединить слева ... |
|||
23
alarm2020
10.08.22
✎
14:47
|
(22) "Как работает СОЕДИНЕНИЕ" звучит более грамотно, чем "как работает СОЕДИНИТЬ"
|
|||
24
mistеr
10.08.22
✎
14:50
|
(0) По-разному. В том числе и по описанным тобой вариантам. Зависит от СУБД, в которой хранится база и еще от многих факторов.
|
|||
25
СеменовСемен
10.08.22
✎
14:51
|
(23) так надо было и писать по-русски. там никаких соединить нет
|
|||
26
bolder
10.08.22
✎
15:17
|
(0) Пора бы к 21 дню изучения знать, что 1с - ники не управляют, каким образом джойнитьтаблицы в соединении -Nested Loop, Merge Join, Hash Join -СУБД сама решает в ходе составления плана запроса.Да, это полезно, но часто [это] бесполезное знание.Лучше разобрать стандарты разработки 1с, понимать значение индексов в ВТ.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |