更新数据透视视图数据 [英] Updating Pivot view data

查看:134
本文介绍了更新数据透视视图数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

伙计们

我将数据网格中的一些数据显示为数据透视图,某些行变成了列
它是通过sql的数据透视和动态查询生成来完成的.

现在我想要的是也更新同一数据网格中的数据,但问题是它是
聚合数据(因为枢轴函数采用聚合函数,而我正在使用sum(amout)),所以如何在数据网格中进行更新,因为?因为我的数据网格中的每一行都没有标识列?

有帮助吗?
问候

hi guys

I am showing some data in my data grid as a pivot view, some of rows become columns
and it is done through sql''s pivot and dynamic query generation.

Now what I want is to also update data in the same data grid ,but problem is as it is
aggregated data (as pivot function takes a aggregated function i am using sum(amout)) so how can i update in data grid because ? as i dont have identity column for each row here in my data grid ?

any help ?
regards

推荐答案

试试看.....

选择@ Columns = SUBSTRING(@ Columns,0,len(@Columns))

将@SQL声明为varchar(max)

设置@SQL =''SELECT State_name,District_Name,''+ @ Columns +''FROM(
从A
中选择DISTINCT State_name,District_Name,Months_Str,MonthS 其中State_name<> ""TOTAL"" AND District_Name<> ''''总计''''
UNION ALL
从B
中选择DISTINCT State_name,District_Name,Months_Str,MonthS
其中State_name =''''TOTAL''''and District_Name =''''TOTAL''''

)为p
PIVOT(sum(p.MonthS)FOR p.Months_Str IN(''+ @ Columns +''))as pvt''

EXEC(@SQL)

谢谢,
Ramamuni
Try this.....

select @Columns=SUBSTRING(@Columns,0,len(@Columns))

Declare @SQL as varchar(max)

set @SQL=''SELECT State_name,District_Name,''+@Columns+'' FROM (
select DISTINCT State_name ,District_Name,Months_Str,MonthS from A
where State_name <> ''''TOTAL'''' AND District_Name <> ''''TOTAL''''
UNION ALL
select DISTINCT State_name ,District_Name,Months_Str,MonthS from B
where State_name = ''''TOTAL'''' AND District_Name = ''''TOTAL''''

) as p
PIVOT( sum(p.MonthS) FOR p.Months_Str IN (''+@Columns+'')) as pvt''

EXEC (@SQL)

Thanks,
Ramamuni


这篇关于更新数据透视视图数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆