私の結果を、0-33%、34-66%、67-100%の3つのグループにグループ分けする方法を見つけようとしています。計算はすでに「空乏」として設定されています。この列の上、中、下を3つの異なるグループにグループ化したいと思います。ここで私は複数のテーブルから使用しているクエリです。MSSQLグループパーセンテージ
私はパーセンテージを計算できるように、最初にSELECTの中で最高の値を見つけ出す必要があると仮定しますが、それを行う方法は見つからないようです。そこから、%に基づいて項目をグループ化する方法はわかりません。
SELECT l.name AS Location, i.name AS ItemName, li.par, COUNT(*) AS Sales, li.par - COUNT(*) AS Depletion
FROM shoppingcartdetail AS o INNER JOIN
item AS i ON i.id = o.itemid INNER JOIN
location AS l ON o.locationid = l.id INNER JOIN
location_item AS li ON i.id = li.itemid
WHERE (CONVERT(datetime, o.created_date_time, 101) BETWEEN GETDATE() - l.service_interval AND GETDATE()) AND (o.locationid = 1)
GROUP BY i.barcode, i.name, l.name, li.par
サンプル結果M & Mのピーナッツ1.74オンスにより52項目の最高枯渇と100%のしきい値が新しいカラムを三つのグループに分類されることになるであろう
ItemName | avgshelflife | unitcost | par | Sales | Depletion
Dr. Pepper Bottle 20 oz | 90 | 0.83 | 70 | 31 | 39
Mountain Dew Bottle 20 oz| NULL |NULL | 70 | 27 | 43
Coke Can 12 oz | NULL |NULL | 30 | 22 | 8
M&M's Peanut 1.74 oz | 90 | 0.60 | 66 | 14 | 52
Dr. Pepper Can 12 oz | 180 | 0.38 | 30 | 13 | 17
を加えます。この場合
:Y =%* 52(M & Mのピーナッツ1.74オンスの枯渇)
Group0-30% is 0-17
Group31-66% is 18-34
Group66-100% is 35-52
結果、事前に
Group0-30% Coke Can 12 oz
Group31-66% Dr. Pepper Can 12 oz
Group66-100% Dr. Pepper Bottle 20 oz, Mountain Dew Bottle 20 oz, M&M's Peanut 1.74 oz
ありがとう!
することができますサンプルを追加するaと疑問の予期した結果 –