я 2 таблицы: 1. Материал с полями: materialcode, materialname, materialgroup 2. ProductionOrder с полями: materialcode, кол-во, ORDERDATE Я хочу, чтобы получить и группу по materialgroup. Таким образом, я использую следующий запрос:SQL Server LEFT JOIN
SELECT Material.materialgroup, ProductionOrder.qty
FROM ProductionOrder LEFT OUTER JOIN Material
ON ProductionOrder.materialcode=Material.materialcode
WHERE ProductionOrder.orderdate='2013-11-30'
GROUP BY Material.materialgroup
ORDER BY Material.materialgroup
Но результат неправильный. Он принимает все materialcode с группой materialgroup null. Примечание: есть некоторые материалы в ProductionOrder, не имеют материальной группы в таблице Material. Результат, иногда правильный, иногда нет.
Любая помощь. Спасибо.
LVD
И каков был бы «правильный» результат? –
Это то, что означает внешнее соединение. Возможно, вам понадобилось внутреннее соединение –
в качестве побочного примечания, что это не сработает на SQL-сервере (который был тегом), потому что ProductionOrder.qty не является частью групповой или агрегатной функции. (Может быть, это действительно MySQL?) –