我正在尝试将包含用户信息的表连接到现有的Crystal报表。我想根据我的第一个表中的一个字段中的前7个字符创建连接,该表与第二个表中的唯一ID匹配。
我很确定等效的SQL只是
JOIN db.table2 on left(db.table1.userid, 7) = db.table2.userid
但我不确定如何将其转换为Crystal的GUI中的内容(或者甚至可以在Crystal中执行)。我会在Command中执行此操作,但现有的报告已经使用了通过Crystal自己的处理方式链接的一大堆不同表中的字段,如果我将其转换,则需要永久重新映射它们。
答案 0 :(得分:1)
您将无法从数据库专家那样进行连接,但您可以将该逻辑放入带有left({table1.userid},7) = {table2.userid}
的记录选择公式中。
但是应该注意,这是非常hacky并且当你将两个传统的未连接表添加到这样的报表时,CR通常不喜欢。只是一个快速的本地测试告诉我,这样做实际上并没有转化为格式良好的WHERE子句,但CR强制本地“加入”。换句话说,您的里程可能会有所不同。