最近又遇到同事问横向扩展强制换行的问题,很久之前做的报表了,今天再以一个简单的例子记录下,以加强记忆。
A1:=ds1.count(),用于计算此数据集内的数据个数。
B1:=int(A1)/3+1,用于计算一共需要扩展的行数,其中”3″是每行的数据列数。
A3:=to(1,B1),作为强制分行的扩展基础。
B3:=(A3-1)*3,是每行的基数。
D2:=to(1,3),与B1统一,,扩展方式为横向扩展。
=ds1.select1(封条号,rowNo==D2+B3)
其中D2+B3分别递增,达到与每个rowNo进行匹配的目的,这里需要着重强调的是数据集里
其中D2+B3分别递增,达到与每个rowNo进行匹配的目的,这里需要着重强调的是数据集里
需要”rowNo”是连续递增的数字,来实现换行后的匹配。
所以sql语句的rowNo作用就在这
select (@rowNO := @rowNo+1) AS rowno,securitylabel_id FROM (
select ts.securitylabel_id as securitylabel_id from Tms_SecurityLabel ts
inner join tms_leg tmsleg on ts.LEG_ID = tmsleg.ID
where tmsleg.ID = 42625
)a,(select @rowNO :=0) b
预览效果: