在截断字段上连接Crystal中的表

时间:2014-04-23 16:21:36

标签: sql join crystal-reports truncate

我正在尝试将包含用户信息的表连接到现有的Crystal报表。我想根据我的第一个表中的一个字段中的前7个字符创建连接,该表与第二个表中的唯一ID匹配。

我很确定等效的SQL只是

JOIN db.table2 on left(db.table1.userid, 7) = db.table2.userid

但我不确定如何将其转换为Crystal的GUI中的内容(或者甚至可以在Crystal中执行)。我会在Command中执行此操作,但现有的报告已经使用了通过Crystal自己的处理方式链接的一大堆不同表中的字段,如果我将其转换,则需要永久重新映射它们。

1 个答案:

答案 0 :(得分:1)

您将无法从数据库专家那样进行连接,但您可以将该逻辑放入带有left({table1.userid},7) = {table2.userid}的记录选择公式中。

但是应该注意,这是非常hacky并且当你将两个传统的未连接表添加到这样的报表时,CR通常不喜欢。只是一个快速的本地测试告诉我,这样做实际上并没有转化为格式良好的WHERE子句,但CR强制本地“加入”。换句话说,您的里程可能会有所不同。