在Excel中从SQL中绘制Perfmon数据

时间:2012-10-04 22:07:53

标签: sql sql-server excel

我正在将perfmon中的一些邮箱服务器的性能数据捕获到SQL中。随之而来的一切都很顺利。我可以查询数据等。

SQL表架构是这样的:

CREATE TABLE [dbo].[Perfmon_MBX]
(
    [ID] [int] IDENTITY(1,1) NOT NULL,
    [Server] [varchar](50) NULL,
    [ObjectName] [varchar](100) NULL,
    [CounterName] [varchar](100) NULL,
    [InstanceName] [varchar](100) NULL,
    [Value] [decimal](18, 3) NULL,
    [DateTime] [datetime] NULL
)

这是我正在运行的用于撤回数据的典型查询:

SELECT
Server,
ObjectName,
CounterName,
InstanceName,
Value,
DateTime
FROM Perfmon_MBX
WHERE ObjectName = 'logicaldisk'
AND CounterName = 'avg. disk sec/read'
AND InstanceName LIKE 'd:\databasefolder\dag1%'
AND Server = 'mailboxserver.domain.com'
AND DateTime > '2012-10-04 09:00:00'
AND DateTime < '2012-10-04 09:20:00'
ORDER BY InstanceName, DateTime

数据就像我上传的.csv文件一样:

http://ge.tt/1M7utuO/v/0?c

我遇到的问题是,每个数据库(在InstanceName列中)都需要在图表上有不同的系列或行。

如果不手动添加所有10个系列,我看不到一个简单的方法,这有点浪费时间,这个例子是与现实相比的简洁/简单。

有人可以帮我用Excel更轻松地绘制这些数据吗?

我是否需要以某种方式调整我的SQL查询,或者在Excel中是否有一个很容易做到这一点我完全不知道?

如果您需要更多信息,请询问

1 个答案:

答案 0 :(得分:0)

最后,我使用Excel中的数据透视表进行了此操作,以防其他人想知道如何执行此操作!