У меня есть SQL-запрос:реляционная база данных присоединиться только показывает одну строку
SELECT B.branchNumber, B.buildingName, SUM(CASE WHEN PI.offerPrice > 0 THEN PI.offerPrice * PI.quantity ELSE price * PI.quantity END) AS total
FROM `purchase`
INNER JOIN `product` on purchase.productCode = product.productCode
INNER JOIN `branch` B on purchase.branchNumber = B.branchNumber
INNER JOIN `purchase info` PI on purchase.productCode = PI.productCode AND purchase.purchaseID = PI.purchaseID
Который возвращается только один total
Как INNER JOIN
показывает только совпадающие столбцы с total
. Когда я удаляю:
SUM(CASE WHEN PI.offerPrice > 0 THEN PI.offerPrice * PI.quantity ELSE price * PI.quantity END) AS total
Он возвращает несколько строк. Как я могу получить это, чтобы вернуть все строки с помощью total
?
Попробуйте использовать LEFT JOIN вместо этого. – Chibuzo
Я пробовал, но не повезло! Я думаю, что мне нужно гнездо – maxisme