Задать вопрос
@FANTASANTA

Как получить итоговую сумму из двух таблиц?

Имеется сущность Товары - данная сущность имеет две таблицы, в одной название, прайс, а в другой кол-во данного товара.
Примерно это выглядит так:

table_products
id  |  name        |  price
1   |  iphone      |  1000
2   |  ipad          |  2000
3   |  macbook   |  3000

table_warehouse_products
id  |  product_id  |  quantity
1   |  1                 |  5
2   |  2                 |  13
3   |  3                 |  20


как мне получить итоговую сумму "price" товаров с учетом количества из другой таблицы?
foreach не подойдет, ибо товаров может быть более 30тыс
  • Вопрос задан
  • 140 просмотров
Подписаться 1 Простой 5 комментариев
Пригласить эксперта
Ответы на вопрос 2
Immortal_pony
@Immortal_pony Куратор тега MySQL
Не описаны ситуации, когда нет информации о количестве продуктов на складе или, наоборот, на складе продукт есть, а вот в прейскуранте нет информации о его цене.

Если исходить из предположения, что прейскурант первичен или данные всегда консистентны, то так:

SELECT 
    `table_products`.`name` AS 'name',
    `table_warehouse_products`.`quantity` AS 'quantity',
    `table_products`.`price` AS 'price',
    `table_warehouse_products`.`quantity`*`table_products`.`price` AS 'total'
FROM 
    `table_products`
    LEFT JOIN `table_warehouse_products` ON (`table_warehouse_products`.`product_id`=`table_products`.`id`)
Ответ написан
Комментировать
@abylalikkkk
SELECT SUM(table_products.price * table_warehouse.quantity) FROM table_products, table_warehouse

Может так?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы