私はテーブルコストカテゴリを持っています:
CREATE TABLE [dbo].[CostCategory](
[ID_CostCategory] [int] NOT NULL,
[Name] [varchar](150) NOT NULL,
[Plan] [money] NOT NULL,
[Realization] [money] NULL,
)
go
コストが定義された別のテーブルがあります。
CREATE TABLE [dbo].[Cost](
[ID_Cost] [int] NOT NULL,
[Name] [varchar](50) NULL,
[ID_CostCategory] [int] NULL,
[ID_Department] [int] NULL,
[ID_Project] [int] NULL,
[Value] [money] NULL,
)
go
私がしたいことは、Cost テーブル (ID_CostCategory に従って) の値を合計し、Cost Category テーブルの Realization 列に入れることです。したがって、各 ID_CostCategory は、(ID_CostCategory ごとに) コスト テーブルからのコストの合計を自動的に提示します。
コスト カテゴリ テーブルのスクリプトを変更してそれを達成するにはどうすればよいですか? おそらくそれはロケット科学ではありませんが、私はSQLに本当に慣れていません。
わかった。追加するのを忘れていたもう1つのこと...構造はある意味で見えます:
コスト>コストカテゴリ>部門>プロジェクト
現在、コスト テーブルから簡単にデータを取得し、それをコスト カテゴリ テーブルに表示できます。ただし、Cost テーブルには次のようなデータが含まれます。
ID_Cost Name ID_CostCategory ID_Department ID_Project Value
1 fv 001 1 1 1 100
2 fv 002 2 1 1 500
3 fv 003 2 2 1 300
4 fv 004 3 2 2 150
5 fv 005 3 3 2 30
6 fv 006 4 3 2 15
ID_Department、Name、Plan、
だから今、私がやりたいのは、Cost テーブル (ID_CostCategory と ID_Department に従って) の値を合計し、Department テーブルに Realization 列として入れることです。したがって、各 ID_Department は、Cost テーブル (ID_CostCategory および ID_Department ごと) からのコストの合計を自動的に提示します。
明確であることを願っています(後でテーブルプロジェクトで行う必要がありますが、取得したら簡単になります)