テーブルには、Contract_number
,Revenue
およびCust_name
の3つの列があります。 Contract_number
でグループ化して、その契約の総収入を得るには、SUM(Revenue)
にしたいと思います。次に、Cust_name
を表示して、その契約のもとにいる顧客を示したいとします。SQL Server:集計する場合、特定の列に対して1行の値を選択します。
特定の契約のもとで、Cust_name
の値が複数あるという問題があります。コントラクトの下にあるCust_name
の値はすべて非常に似ていて、どれが使用されているかは気にしません。そのうちの1つを表示したいだけです。
MIN(Cust_name)
のようなものを使用するとデータが失われ、GROUP BY Cust_name
にすると値が複数の行に分割されます。
Contract_number
とRevenue
の集約関数を同じに保ちながら、それぞれの結果に単一のCust_name
値を追加する方法はありますか?
利用MAX(CUST_NAME)の3つの列のような – Dimitri
以上の行 – maSTAShuFu
むしろ**ノーマライズ**あなたのテーブル、なぜあなたは1つのContract_Numberに似たCust_Namesをたくさん持っていますか? –