好的。我编辑我的问题。这是我的脚本:将多行转换为列编辑
CREATE TABLE #Table (
Data Date,
Max_Temp Real,
Min_Temp Real,
Sr_Temp Real,
Sr_Temp_work Real)
SET NOCOUNT ON
DECLARE @StartTime Time
DECLARE @EndTime Time
DECLARE @StartTime1 Time
DECLARE @EndTime1 Time
DECLARE @data_start Date
DECLARE @data_stop Date
DECLARE @Data Date
DECLARE @Data_stop_while Date
DECLARE @Max_Temp Real
DECLARE @Min_Temp Real
DECLARE @Sr_Temp Real
DECLARE @Sr_Temp_work Real
SET @data_start = '20140713'
SET @data_stop = '20140719'
SET @StartTime = '00:00:00.000'
SET @EndTime = '23:59:59.998'
SET @StartTime1 = '08:00:00.000'
SET @EndTime1 = '16:30:00.000'
Set NOCOUNT OFF
SELECT @Data = @data_start
SELECT @Data_stop_while = DATEADD(day,1,@data_stop)
WHILE (@Data_stop_while<>@Data)
BEGIN
SELECT @Max_Temp = MAX(Value), @Min_Temp = MIN(Value), @Sr_Temp = AVG(Value) FROM INSQL.Runtime.dbo.History WHERE TagName IN ('VariableName')
and wwRetrievalMode = 'Cyclic'
AND DateTime >= (@Data + cast(@StartTime as datetime))
AND DateTime <= (@Data + cast(@EndTime as datetime))
SELECT @Sr_Temp_work = AVG(Value) FROM INSQL.Runtime.dbo.History WHERE TagName IN ('VariableName')
and wwRetrievalMode = 'Cyclic'
AND DateTime >= (@Data + cast(@StartTime1 as datetime))
AND DateTime <= (@Data + cast(@EndTime1 as datetime))
INSERT INTO #Table(Data, Max_Temp, Min_Temp, Sr_Temp, Sr_Temp_work) VALUES (@Data, @Max_Temp, @Min_Temp, @Sr_Temp, @Sr_Temp_work)
SELECT @Data = DATEADD(day,1,@Data)
END
SELECT Data, Max_Temp, Min_Temp, Sr_Temp, Sr_Temp_work FROM #Table GO
当我设置一个特定的时间间隔,我有这些表,现在我需要转换的表:
我用支点,UNPIVOT与任何链接论坛和我不能这样做...
请把实际的代码,而不是脚本的形象.. – 2014-08-28 09:13:56
还向我们展示了预期的输出... – 2014-08-28 09:16:08
请张贴实际的代码 – Adi 2014-08-28 09:20:28