我这边有个方案,您可以试试。
(1)新建一张真实表,暂叫t1;再建一个t1的视图,暂叫v1
(2)在活字格内部调用存储过程,传想要查的月份,然后用存储过程将这个月份数据插入到t1中
t1数据为
(3)再建一张视图v2用V1查询出月报,固定查1-31号,这样列就不会变,建v2 的sql供参考
- select * from(
- select 姓名,组别, SUBSTRING(CONVERT(varchar(100), 日期, 111),9,2) as 日期, 内容 from v1) b
- pivot(max(内容) for 日期 in ([01],[02],[03],[31])) c;
复制代码
然后v2就可以得到如下数据
(4)最后就可以用v2的数据作展示,如果查询的那个月没有31号或者30号,这列的数据就为空
|