2014-10-22 2 views
0

Мне нужно рассчитать общий объем (15% от общего объема продаж), рассчитанный для общего объема продаж. им бороться с этим запросом я первый попробовал выбрать сумму, то какой не работал ->расчет общего количества НДС для продаж

SELECT SUM(price) AS total_sales, 
     SUM(price) * 0.15 AS fifteen_percent 
FROM sales; 

здесь картина таблицы товаров products

здесь картина продаж стол sales table

вся помощь была бы благодарна!, спасибо.

+0

Ваш запрос работает для меня (Postgres) без проблем. – Smutje

ответ

1
SELECT SUM(price*quantity) AS total_sales, 
     SUM(price*quantity) * 0.15 AS fifteen_percent 
FROM sales 
JOIN products ON sales.prod_id = products.prod_id; 
0

Wawrzyniec правильный, но вы также можете использовать функцию Windowed для агрегации.

  SELECT DISTINCT prod_name, 
          SUM(price) OVER(PARTITION BY prod_name) * quantity as total_sales, 
          (SUM(price) OVER(PARTITION BY prod_name) * quantity) * 0.15 as fifteen_percent  
      FROM sales 
      INNER JOIN products ON sales.prod_id = products.prod_id; 
Смежные вопросы