在Access 2003中,当且仅当PK上有过滤器并且加入了子查询时,备忘录字段才出现问题
时间:2020-03-06 14:44:39 来源:igfitidea点击:
我在Acess 2003(SP3)中的查询中遇到问题。
我有一个包含一些表和一个子查询的查询。子查询和表都连接到主表。该查询使用一些聚合函数,并且有一个HAVING子句可以过滤主键(PK)上的结果。
在这种情况下,主表的备注字段无法正确显示。显示两个从不相同的垃圾字符,而不显示该字段的内容。
现在很奇怪的是,如果我删除了HAVING子句,或者如果我使用它来过滤除PK之外的其他内容,则该字段将正确显示。如果我从查询中删除了子查询,即使PK上仍然有一个过滤器(HAVING子句),该字段也将正确显示。
这是Access中的错误吗(我认为是)?如果是这样,有人知道此错误的解决方法吗?
解决方案
在GROUP BY查询中,MSAccess备注字段被截断为255个字符(在Access 2000之前根本无法使用)。但是,要解决明显的错误,请尝试以下操作:
代替MemoField使用Left([MemoField,255)