Надеюсь, вы мне поможете, обычно я занимаюсь анализом в R и базовыми запросами в SQL и опутал себя тем, что кажется основной проблемой.
У меня есть базовая таблица: таблица
ID product % discount (int)
1 a 10
2 a 0
3 a 5
4 b 0
5 b 5
6 b 5
7 c 0
Я хочу рассчитать процент от скидки, если она применяется к товару. Я перепробовал несколько подходов, все из которых либо показывают неправильные значения, либо ошибки, и я не уверен, что это синтаксис или подход основан.
Примеры ошибочного кода ниже, хотя, пожалуйста, дайте мне знать, если есть более простой способ.
Я хочу рассчитать% от суммы скидки, если она применяется к товару. Я перепробовал несколько подходов, все из которых либо показывают неправильные значения, либо ошибки, и я не уверен, что это синтаксис или подход основан.
SELECT count(discount) as discountN where discount > 0,
count(discountN) * 100.0 / (select count(product_id) from table) as percent
FROM table
group by ID
с общим количеством избранных (*) как общим из таблицы
выберите количество (скидка) / всего
ГДЕ скидка> 0
С таблицы
сгруппировать по ID
Я ожидаю:
a: 66%
b: 66%
c: 0%