私はPCのテーブルを持っており、トップPCメーカーの数を取得したいと考えています。データは円グラフで表示され、現在〜45種類のメーカーがありますので、トップ5のカウントを取得してから、「その他」にすべてを組み合わせてください。TOP 5をカウントし、「その他」と数えてください
次のクエリでは、メーカーがすべてのPCの数を返します。上記のクエリの
SELECT
f_assetmanufacturer,
COUNT(*) as 'PCs'
FROM tb_assets
GROUP BY f_assetmanufacturer
サンプル出力は次のように
f_assetmanufacturer PCs
-----------------------------
Dell 100
HP 50
Lenovo 25
Acer 24
Toshiba 23
Microsoft 20
Equus 20
Thinix 20
Advantech 20
所望の出力は次のようになります。
f_assetmanufacturer PCs f_assetmanufacturer PCs
----------------------------- -----------------------------
Dell 100 Dell 100
HP 50 Other 100
Lenovo 25 or HP 50
Acer 24 Lenovo 25
Toshiba 23 Acer 24
Other 100 Toshiba 23
トップ5メーカーのみを選択し、残りのすべての製造業者を '円グラフで出力を簡素化するために「その他」のカテゴリを使用しますか?
トップ5を表示し、残りをアプリケーションレイヤーに集約するだけでなく、ほとんどのチャート機能ではこれを使用して、上位NパーセントまたはNトップアイテムを表示し、残りをロールアップできます。 – scsimon
SQLソリューションが簡潔/明確/容易/効率的でない場合、私はこれを最も確実に行うことができます。しかし私はこれを行うチャーティング機能を持っておらず、SQLソリューションよりもオーバーヘッドを増やす可能性があるカスタムを作成する必要があります。 – Beems