![]() |
|
v7: Прямые запросы на 1С Предприятии 7.7 | ☑ | ||
---|---|---|---|---|
0
Alex2411
26.06.19
✎
16:06
|
Добрый день, подскажите пожалуйста по запросу, делаю соединение таблиц но если в документе не заполнено поле КлиентСпр - то эта строка совсем не выводиться, а мне бы хотелось что бы она выводилась но с пустой ячейкой
вот запрос ТекстЗапроса=" |SELECT | Док.IDDoc as [Док $Документ.Накладная], | Жур.DOCNO as НомерДок, | $Док.Клиент as Клиент, | $СпрКл.ТорговыйПредставитель as [ТорговыйПредставитель $Справочник.Клиенты], | $Док.Регион as Регион, | $Док.Доставка as Доставка , | $Док.ВидОтгрузки as ВидОтгрузки , | $Док.ДатаОтгрузки as ДатаОтгрузки, | ROUND (SUM ($ДокС.Вес),0) as Вес , | ROUND(SUM ($ДокС.Объем),2) as Объем, | SUM ($ДокС.Количество) as Единиц, | SUM ($ДокС.КоличествоОпераций) as Операций, | Count($ДокС.Количество) as Строк |FROM | $Документ.Накладная as Док |INNER JOIN | _1SJourn as Жур ON Жур.IDDoc = Док.IDDoc | AND (Жур.Date_Time_IDDoc BETWEEN :Дата1 AND :Дата2~) | AND (Жур.ISMARK = 0) | AND ($Док.ОжидаетОбработки=1) |INNER JOIN | $ДокументСтроки.Накладная as ДокС ON Док.IdDoc=ДокС.IdDoc |INNER JOIN | $Справочник.Клиенты as СпрКл ON СпрКл.Id=$Док.КлиентСпр |GROUP BY | Док.IDDoc, Жур.DOCNO, $Док.Клиент, $Док.Регион, $Док.Доставка , $Док.ВидОтгрузки, $Док.ДатаОтгрузки, $СпрКл.ТорговыйПредставитель |"; |
|||
1
Вафель
26.06.19
✎
16:06
|
LEFT JOIN
|
|||
2
Salimbek
26.06.19
✎
16:29
|
(0) Вот, товарищ в (1) правильно пишет.
Поясню, INNER - это значит - обязательное соответствие - т.е. и в первой таблице должен быть ключ и во второй. А так как у тебя чего-то нет, то это и отбрасывается LEFT - Это значит из первой таблицы берешь вообще все строки, и к чему найдешь соответствие во второй - то достраиваешь, а чего не найдешь, в тех строчках будет NULL Поэтому последний join лучше переписать на LEFT |
|||
3
Mikeware
26.06.19
✎
16:33
|
(2) короче показать картинку:
https://habrastorage.org/r/w780/files/7ff/b2c/3a2/7ffb2c3a25b74dcf9eec013282b9cfb4.png |
|||
4
Alex2411
26.06.19
✎
17:32
|
Спасибо большое, я думаю эта статья будет полезна не только мне)))
|
|||
5
Mikeware
26.06.19
✎
17:35
|
(4) какая?
|
|||
6
Злопчинский
27.06.19
✎
14:56
|
(3) и че на этой картинке? лефтджойн - выбрасываем правую таблицу вообще как будто ее и нет. и получаем одну левую таблицу всю. как на рисунке - она же вся в результате. без всяких добавок от правойц таблицы.
|
|||
7
ДенисЧ
27.06.19
✎
14:58
|
(5) 282? )))
|
|||
8
ДенисЧ
27.06.19
✎
14:58
|
(6) А теперь предствавь, что круги эти - всего лишь набор полей, по которым объединяется.. За ними есть ещё могуча кучка данных...
|
|||
9
Alex2411
03.09.19
✎
11:06
|
Подскажите пожалуйста, а возможно ли работать в прямых запросов с группировками?? что то типа
ЗапросПоТоварам.Группировка("Товар")=1 |
|||
10
Alex2411
03.09.19
✎
11:07
|
Текущий мой запрос:
ТекстЗапроса=" |SELECT | Рег.Товар as [Товар $Справочник.Товары], | RIGHT(Рег.ПозицияДокумента,9) as [Документ1 $Документ], | Рег.ВидДокумента as [Документ1_вид], | $РегП.КодОперации as КодОперации, | Рег.ОстатокТовараНачальныйОстаток as КоличествоНачальныйОстаток, | Рег.БазоваяСтоимостьНачальныйОстаток as СтоимостьНачальныйОстаток, | | Рег.ОстатокТовараПриход as ДокКоличествоПриход, | Рег.БазоваяСтоимостьПриход as ДокСтоимостьПриход, | Рег.ОстатокТовараРасход as ДокКоличествоРасход, | Рег.БазоваяСтоимостьРасход as ДокСтоимостьРасход, | | Рег.ОстатокТовараКонечныйОстаток as КоличествоКонечныйОстаток, | Рег.БазоваяСтоимостьКонечныйОстаток as СтоимостьКонечныйОстаток | |FROM | $Регистр.ОстаткиТоваров as РегП (nolock) |Inner Join | $РегистрОстаткиОбороты.ОстаткиТоваров(:НачДата, :КонДата~, Документ,,,Товар = :ВыбТовар) as Рег On | РегП.IdDoc=RIGHT(Рег.ПозицияДокумента,9) | and $РегП.Товар=Рег.Товар |"; |
|||
11
ДенисЧ
03.09.19
✎
11:18
|
(9) Нет, руками считай.
|
|||
12
Alex2411
03.09.19
✎
11:21
|
(9) Так это какая потеря в скорости(((
|
|||
13
ДенисЧ
03.09.19
✎
11:48
|
(12) Поиграйся с WITH ROLLUP, если у тебя sql, не sqlite
|
|||
14
АгентБезопасной Нацио
03.09.19
✎
12:22
|
выгружай результаты в ИТЗ, и группируй как хочешь
|
|||
15
Alex2411
03.09.19
✎
15:01
|
(13) тоже уже об этом думаю
|
|||
16
Alex2411
03.09.19
✎
15:01
|
всем спасибо.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |