店の名前、販売日、販売された商品を含むテーブルがあります。
Shop | Date | Item
Shop1 | xxxxx | A
Shop1 | xxxxx | B
Shop1 | xxxxx | B
Shop1 | xxxxx | A
Shop1 | xxxxx | A
そのため、商品「A」が 3 つと商品「B」が 2 つ売れました。
そのため、アイテム A (3 個販売) は合計 (5 個販売) の 60% であり、アイテム B は 40% です。
だから私はこのようなものを取得したい:
Shop1 | A | 3 | 60%
Shop1 | B | 2 | 40%
次の方法で取得する必要があります。
Select Shop, item, count(item), count(item) *100 / (select count(item) from table) + '%'
from table
group by Shop, item;
私の問題は、テーブルに 1 つのショップだけが含まれているのではなく、他のショップも含まれていることです: shop1、shop2 など。
だから私はこのような結果を得たいと思います:
Shop1 | A | 3 | 60%
Shop1 | B | 2 | 40%
Shop2 | A | 8 | 80%
Shop2 | B | 2 | 20%
shop3 | A | 1 | 100%
shop4……
何か助けはありますか?