顧客のフィールドに多数の行が割り当てられていないが、salesフィールドに値がある顧客レベルのデータを扱っています。これらの行の売上高を、割り当てられていない顧客を顧客と一緒に行に割り当てることを希望します。この割り当ては、指定顧客にすでに割り当てられている売上に比例して行いたいと思います。最後に、割り当てられていない顧客がいる行をテーブルから削除したいと思います。例えば、私のデータは、おおよそ次のようになります。上記の例でSQL Serverは指定された行から条件の他の行に値を割り当てます。
Year Market Customer Sales
2016 China A 100
2016 China B 150
2016 China Not assigned 200
2015 Europe D 100
、Iは(年市場は3行に等しい場合)、行1及び2に割り当てられる3番目のレコードの売上値を希望します売上高に比例してこのように、ファイナルテーブルには、次のようになります。起動するには
Year Market Customer Sales
2016 China A 180
2016 China B 270
2015 Europe D 100
、私は、割り当てに関連する寸法でグループ化された各「割り当てられていない」行、で新しいテーブルを作成しました。
SELECT *
INTO [dbo].[notassignedtable]
FROM(
SELECT YEAR, Market, Customer, sum(Sales) as Sales
FROM table
WHERE Customer = 'Not assigned'
GROUP BY YEAR, Market, Customer
) grouped
これは正しい方向へのステップですか?ここからどこに行くのかに問題があります。
ありがとうございます!
結果を得るために、元の売上高で追加! – Wilson