MNosouhi
جمعه 02 آبان 1393, 09:13 صبح
با سلام
جدولی به ساختار زیر دارم :
CREATE TABLE [dbo].[SampleTable](
[code1] [int] NOT NULL,
[code2] [int] NOT NULL,
[value] [int] NULL,
CONSTRAINT [PK_a] PRIMARY KEY CLUSTERED
(
[code1] ASC,
[code2] ASC
) ON [PRIMARY]
) ON [PRIMARY]
GO
که دارای مقادیر زیر است :
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (29, 3, 3)
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (43, 14, -3)
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (45, 22, -17)
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (47, 20, -13)
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (50, 1, 35)
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (51, 1, 9)
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (54, 1, 10)
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (54, 18, -10)
می خواهم در یک View ، یک فیلد اضافه کنم که مقادیر آن در هر سطر ، برابر با مجموع مقادیر قبلی فیلد Value باشد . من کد زیر را نوشتم اما جواب نگرفتم ، لطفا راهنمایی بفرمایید :
SELECT *,
(SELECT SUM(Value) AS Expr1
FROM SampleTable AS a1
WHERE (a1.Code1 <= a2.Code1)and(a1.code2 <= a2.code2)) AS SumBefor
FROM SampleTable AS a2
جدولی به ساختار زیر دارم :
CREATE TABLE [dbo].[SampleTable](
[code1] [int] NOT NULL,
[code2] [int] NOT NULL,
[value] [int] NULL,
CONSTRAINT [PK_a] PRIMARY KEY CLUSTERED
(
[code1] ASC,
[code2] ASC
) ON [PRIMARY]
) ON [PRIMARY]
GO
که دارای مقادیر زیر است :
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (29, 3, 3)
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (43, 14, -3)
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (45, 22, -17)
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (47, 20, -13)
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (50, 1, 35)
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (51, 1, 9)
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (54, 1, 10)
INSERT [dbo].[SampleTable] ([code1], [code2], [value]) VALUES (54, 18, -10)
می خواهم در یک View ، یک فیلد اضافه کنم که مقادیر آن در هر سطر ، برابر با مجموع مقادیر قبلی فیلد Value باشد . من کد زیر را نوشتم اما جواب نگرفتم ، لطفا راهنمایی بفرمایید :
SELECT *,
(SELECT SUM(Value) AS Expr1
FROM SampleTable AS a1
WHERE (a1.Code1 <= a2.Code1)and(a1.code2 <= a2.code2)) AS SumBefor
FROM SampleTable AS a2