业务人员给我出了个难题 ,如果他选择了一到六月,那么列头就是一到六月,同样的,他选择了一到十二月,那么列头就是一到十二月,这sql咋写,有大佬能给个思路吗
这个可以直接在FR里用公式生成就好了啊
uniquearray(maparray(range(todate($开始年月+"-01"),monthdelta(todate($开始年月+"-01"),12)),left(item,7)))
select ${P},其他字段 from table
一个简单的示例
sql里就是 月份<= '${月份}',就直接展示出所选月份的列头了。用条件公式就是在列头添加条件属性-列宽为0,公式就用$$$ > $月份,代表当前值大于所选月份列宽就变为0,但是你列头的月份要存数字,显示值用 $$$ + 月的行式
直接查询表 select * from table where date between xx and xx
然后月份字段横向扩展就可以了