在Crystal Reports中添加列和记录

时间:2018-08-09 14:24:23

标签: sql crystal-reports report crystal-reports-2008

我正在处理Crystal报表,因此需要始终从数据库中提取该记录的两条记录。但是,我正在将两个字段硬编码到报告中。每次有一条记录时,记录中应有一个包含具有1值和2值的字段的列,每当有1时,应添加另一个字段,写为“ 111211”,而对于具有2值的其他记录,则应添加其他列应显示“ 222122”。我的查询根据条件提取了StudentID,但是每当有一条记录时,都应将一个字段添加到报告中,以创建两个记录,一个记录的值为“ 1”,另一个记录的值为“ 2”。有没有办法在水晶报告中实现这一目标?任何帮助将不胜感激。

StudentID  addedField  addedFieldTwo
5191205     1          11121        
5191205     2          222122
5191215     1          11121        
5191215     2          222122
5191891     1          11121        
5191891     2          222122

1 个答案:

答案 0 :(得分:0)

如果我正确理解了您的问题,则可以使用cross join来获得结果:

select studentid, addedfield, addedfieldtwo
from yourtable cross join 
    (select 1 as addedField, 11121 as addedFieldTwo
     union all
     select 2 as addedField, 222122 as addedFieldTwo
     ) t
order by studentid, addedfield, addedfieldtwo

这将为每个返回的学生记录创建一个cartesian product