嗨,伙计们,我一直在思考如何处理这个问题已经有一段时间了,我只是被困住了。希望这个问题对社区有用。
我有一个趋势表,其中包含如下第一个表的数据。我有另一个表,其类别如下面的第二个表。目标是在堆积柱形图中显示数据。图表中的每一列将是当天的最后一个样本,每列的系列组将是电路类别。
数据每 10 分钟采样一次,但例如,我每天只输入 2 个样本:
time_stamp | circuit1 | circuit2 | circuit3
1/5/13 08:00 | 50 | 60 | 30
1/5/13 04:00 | 48 | 55 | 26
1/4/13 08:00 | 42 | 52 | 22
1/4/13 04:00 | 40 | 51 | 20
等等
我有一个与此类似的类别表:
Circuit_name | circuit_category
circuit1 | category4
circuit2 | category2
circuit3 | category12
等等
从报告的角度来看,也许我没有想到一种更简单的方法来做到这一点,但是为了每天得到一个像要求一样的堆积条形图,我想我需要一个查询,结果如下:
time_stamp | Circuit_name | Circuit_category | Value
1/5/13 08:00 | Circuit1 | category4 | 50
1/5/13 08:00 | Circuit2 | category2 | 60
1/5/13 08:00 | Circuit3 | category12 | 30
1/4/13 08:00 | Circuit1 | category4 | 42
1/4/13 08:00 | Circuit2 | category2 | 52
1/4/13 08:00 | Circuit3 | category12 | 22
我在想我需要编写一个查询来获取max(time_stamp)
按天分组的数据,但要对结果进行透视,以便我可以将数据加入到类别表中。因为我必须将 table2 中的 circuit_name 连接到 table1 中的实际列名,所以我一直在尝试在第一张表上使用 pivot ,但是我一直遇到死胡同,因为我对 pivot 的理解不够好。
无论如何,如果有必要将电路类别硬编码到查询中,我愿意放弃表 2,但这又是我卡住的地方。任何指导将不胜感激。
数据在 sql2008r2 服务器上。
谢谢!