我有一个SQL的问题,我想看看是否有人知道一个解决方案。
我试图拉从SQL的数据,放到一个DataGrid视图,然后打印到Excel试算表中的数据。
让我解释一下我有麻烦。必须将数据从SQL拉已经格式化,所以,它进入数据网格视图,然后到Excel。
我完全理解如何得到的数据,放到一个DataGrid视图,然后打印到一个格式化的Excel工作表。
这里的问题是:
我需要的数据网格视图类似于以下:
人的姓名\员工人数\列共1 \ 1栏第1列的最高价值总额的百分之
有共5列,每个百分比。
这里就是我到目前为止,我道歉,它将运行,而不是被格式化要正确读,我会尽我所能。
这里是我并没有做什么,我需要它做的SQL语句:
---------------------
Declare @MaxVar1 int
Declare @MaxVar2 int
Declare @MaxVar3 int
Declare @MaxVar4 int
Declare @MaxVar5 int
SELECT @MaxVar1 = Count(Column1) FROM dbo.Mytable WHERE Condition1 = 'VbCondition1' AND Condition2 = 'VbConditon2' GROUP BY EmployyeNum ORDER BY COUNT(Column1)
SELECT NAME, EmployeeNum, SUM(Column1), (Sum(Column1) *100 / @MaxVar1
From dbo.MyTable Where Condition1 = 'Vbcondtion1' AND Condition2 = 'VbCondition2'
Group By Name, EmployeeNum Order by @MaxVar1 Desc
-------------------
我得到的是列的最高输入,而不是一列的雇员计算总。当我除以MaxVar心,我不能得到雇员总数%,显示雇员完成。
SQL是不是让我做一个查询子查询内,得到一个值。
有一些其他的办法做到这一点吗?
任何帮助或建议将多于赞赏。:8182832 |会员:会员8182832:答案是使用一个临时表
代码如下:
---------------
{C}----------------------
这是一个解决方案,做到这一点。
如果有谁知道做一个更好的办法,请发表您的答案。
我希望这将帮助别人。这是一个巨大的痛苦,要弄清楚:米卡Wendelius