Я использовал этот форум какое-то время, чтобы найти ответы на некоторые вопросы, связанные с SQL. Теперь пришло время задать вопрос, который я пытался выяснить в течение некоторого времени.SQL SELECT с несколькими таблицами и SUM
У меня есть две таблицы (продукт и источник).
Я хотел бы создать SQL SELECT для извлечения списка записей из источника и одной дополнительной записи из продукта (SUM цены). Таблица, которую я хотел бы увидеть, должна выглядеть примерно так:
source.source_id | Источник | source.source_name | source.source_description | source.source_date | source.price | SUM (product.price) | SUM (product.price) WHERE product.quantity < 1 (это последняя колонка, где я застреваю).
источник.location и product.location связаны.
Этот код работает и дает результат я хочу:
SELECT s.source_id
, s.location
, s.source_name
, s.source_description
, s.source_date
, s.source_price
, p2.Total
, sum(p1.price) as SumProductSold
FROM source s
JOIN product p1
on s.location = p1.location
JOIN
(
SELECT location, sum(price) as Total
FROM product
GROUP BY location
) p2
on s.location = p2.location
WHERE p1.quantity < 1
GROUP BY s.source_id, s.location, s.source_name
, s.source_description, s.source_date, s.source_price, p2.Total
Спасибо вам bluefeet !!
У вас есть два одинаковых столбца? 'SUM (product.location) | SUM (product.location) ' –
Кроме того, если source.location = product.location, зачем вы хотите использовать SUM для product_location? –
'WHERE ???. Местоположение * меньше * 0'? –