|
Разная работа запросов | ☑ | ||
---|---|---|---|---|
0
vladis222
22.07.19
✎
17:17
|
Неправильная работа запроса
Здравствуйте,подскажите,пожалуйста,почему запрос на вывод товаров,по которым нулевой оборот, отрабатывает не так как второй вариант. ВЫБРАТЬ Товар.Код, Товар.Наименование, КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Товар.Ссылка) КАК Колво ИЗ Справочник.Номенклатура КАК Товар ГДЕ НЕ Ссылка В (ВЫБРАТЬ Номенклатура ИЗ РегистрНакопления.ТоварыОрганизаций.Обороты (&НачалоПериода, &КонецПериода) ГДЕ КоличествоОборот <> 0) И НЕ Товар.ЭтоГруппа И Товар.Родитель В ИЕРАРХИИ(&ГруппаТовара) СГРУППИРОВАТЬ ПО Товар.Код, Товар.Наименование УПОРЯДОЧИТЬ ПО Товар.Наименование вот первый вариант,здесь три условия ВЫБРАТЬ Товар.Код, Товар.Наименование КАК Название, 1 КАК Поле1, КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Товар.Ссылка) КАК Колво ИЗ Справочник.Номенклатура КАК Товар ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыОрганизаций.Обороты(&НачалоПериода, &КонецПериода, , ) КАК ТоварыОрганизацийОбороты ПО Товар.Ссылка = ТоварыОрганизацийОбороты.Номенклатура ГДЕ НЕ Товар.ЭтоГруппа И ТоварыОрганизацийОбороты.Номенклатура ЕСТЬ NULL И Товар.Родитель В ИЕРАРХИИ(&ГруппаТовара) СГРУППИРОВАТЬ ПО Товар.Код, Товар.Наименование УПОРЯДОЧИТЬ ПО Товар.Наименование вот второй, дополнительные поля сделал для подсчета товаров, и кол-во товаров отличается в первом и втором случаях... |
|||
1
dka80
22.07.19
✎
17:26
|
В нижнем запросе у тебя попадет номенклатура с нулевым оборотом
|
|||
2
vicof
22.07.19
✎
17:26
|
Потому что во втором выбирается вся номенклатура, в первом только та, что в регистре.
Оба запроса говнецом попахивают. |
|||
3
dezss
22.07.19
✎
17:28
|
(1) НЕнулевым
|
|||
4
vicof
22.07.19
✎
17:35
|
Плюс везде внутреннее соединение, а не левое.
Плюс не используются отборы в виртуальных таблицах. Поле полю1 у тебя ни группируется, ни суммируется. |
|||
5
Жан Пердежон
22.07.19
✎
17:39
|
(4) чот ты гонишь
|
|||
6
vicof
22.07.19
✎
17:50
|
(5) неа
|
|||
7
Ёпрст
22.07.19
✎
17:52
|
(0) параметры поди разные указываете ?
|
|||
8
Жан Пердежон
22.07.19
✎
17:53
|
(7) в (1) правильный ответ
|
|||
9
Ёпрст
22.07.19
✎
17:57
|
(8) >>>>И ТоварыОрганизацийОбороты.Номенклатура ЕСТЬ NULL
Че там гришь попадает то ? |
|||
10
Windyhead
22.07.19
✎
18:02
|
В первом запросе стоит условие:
" ГДЕ КоличествоОборот <> 0 " например было Приход 5 и Расход 5 и КоличествоОборот = 0 а во втором запросе условие "ТоварыОрганизацийОбороты.Номенклатура ЕСТЬ NULL" при тех же данных даст ЛОЖЬ\вот и вся разница |
|||
11
Windyhead
22.07.19
✎
18:05
|
(1) В верхнем запросе попадает товар у которого приход равен расходу.
|
|||
12
Жан Пердежон
22.07.19
✎
18:33
|
(9)
Движение1: Номенклатура=Товар1, Количество=10, Сумма=1000 Движение2: Номенклатура=Товар1, Количество=-6, Сумма=-600 Движение3: Номенклатура=Товар1, Количество=-4, Сумма=-300 Движение4: Номенклатура=Товар2, Количество=1, Сумма=500 что выдадут запросы (период, естественно, в интервале)?: ВЫБРАТЬ Номенклатура ИЗ РегистрНакопления.ТоварыОрганизаций.Обороты(&НачалоПериода, &КонецПериода); ВЫБРАТЬ Номенклатура, КоличествоОборот ИЗ РегистрНакопления.ТоварыОрганизаций.Обороты(&НачалоПериода, &КонецПериода); |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |