Не работает запрос, почему? #238539


#0 by MitTri4
ВЫБРАТЬ        Сумма    ),        Номенклатура.Код    ) ИЗ    Документ.КомплектацияНоменклатуры КАК КомплектацияНоменклатуры КомплектацияНоменклатуры составлялась на основе ЗаказовПокупателей
#1 by Долорес И
ЕдиницаИзмерения.Наименование ... Номенклатура.Наименование
#2 by MitTri4
Поясните...
#3 by Scooter
а что значит не работает, ошибка или еще что?
#4 by Долорес И
Дважды один псевдоним. попробуй ЕдиницаИзмерения.Наименование КАК ЕдиницаИзмеренияНаименования
#5 by MitTri4
Сумма    ),        Номенклатура.Код    ) ИЗ    Документ.КомплектацияНоменклатуры КАК КомплектацияНоменклатуры Не работает, значит не выводит ни одной записи.
#6 by Scooter
эт пофих, 1Ска сама проставит (в результате запроса:)
#7 by Scooter
а как ты их выводишь? в консоли?
#8 by DK_L
Тааблицу не правильно выбрал если в конструкторе, нужно выбирать не сам документ, а ЗаказыПокупателя.Товары .., связку делать через ЗаказыПокупателя.Товары.Ссылка
#9 by Scooter
можно и так, тогда из результата запроса надо выбирать по хитрому  :)
#10 by MitTri4
Да вывожу в консоле
#11 by Scooter
см
#12 by DK_L
ВЫБРАТЬ ИЗ
#13 by DK_L
только не правильный подход ))))
#14 by Scooter
смотря что нужно автору, нормальный запрос когда нужно получить несколько "несвязанных" ТЧ одним запросом
#15 by DK_L
ОБЪЕДИНИТЬ или ОБЪЕДИНИТЬ ВСЕ рулит
#16 by Долорес И
и что там получится? умножение двух тч?
#17 by MitTri4
Мне нужно по одному заказу получить все комплектации (в заказе может быть несколько комплектов). Причем, желательно комплектацию выводить одной строкой с вложенной таблицей комплектующих.
#18 by Scooter
и запрос в и ОБЪЕДИНИТЬ рулит, смотря какой результат
#19 by DK_L
показывал принцип, а не готовый результат
#20 by MitTri4
Забыли про вложения). По одному заказу получить все комплектации.
#21 by Neco
Лучше так, с выборкой меньше проблем:
#22 by MitTri4
аналогично . Получается умножение двух таблиц
#23 by selenat
Все комплектации по заказу в одну строку ты не получишь, их ведь не фиксированное количество.
#24 by MitTri4
Наверное неправильно обьяснил. Мне надо в таком виде:
#25 by selenat
Дык тебе это и написали уже двумя способами...
#26 by MitTri4
Это не то. В итоге получится тупое перемножение двух таблиц
#27 by Shirenin
ему написали декартово перемножение таблиц ))
#28 by Shirenin
почему запрос не пашет неясно, но могу предложить выход как получить похожую выборку - объединение и итоги по заказу и типу таблицы.
#29 by MitTri4
Я пытался, но у меня ничего не вышло. Можешь что-нибудь дельное предложить?
#30 by selenat
может я чего не понимаю, но ИМХО если в Поменять местами документы, которые идут после ИЗ, то получится как раз то, что надо...
#31 by selenat
ВЫБРАТЬ    КомплектацияНоменклатурыКомплектующие.Номенклатура.Артикул,    КомплектацияНоменклатурыКомплектующие.ЕдиницаИзмерения.Наименование,    КомплектацияНоменклатурыКомплектующие.Номенклатура.Код ИЗ
#32 by MitTri4
Не то. Не работает, когда в одном заказе покупателя есть два комплекта, и соответственно на основе этого заказа оформили две комплектации. В этом случае получается перемножение. Когда в заказе один комплект, то все нормуль.
#33 by selenat
В смысле перемножение? Левое соединение как берет все значения первой таблицы и для них выводит (если есть) соответствующие значения второй таблицы. Если для одного значения первой таблицы есть несколько соответствующих значений второй таблицы, то будет соответственно несколько строк с одинаковым значением первого поля и разными значениями второго. Разве не это тебе нужно?
#34 by MitTri4
Про ЛЕВОЕ СОЕДИНЕНИЕ это ты правильно написал. Дело все в условии. Ты берешь отдельно сравниваешь Вложенные таблицы из Документ.ЗаказПокупателя и Документ.КомплектацияНоменклатуры, а не Поэтому и получается перемножение если в одном заказе больше чем одна такая вложенная таблица...
#35 by Neco
Расширь условие по номенклатуре
#36 by MitTri4
Поясни
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям