我在Access 2007-2010中创建了以下查询
SELECT [Zip Code Count].[Zip Code], [Zip Code Count].CountOfAddress1
FROM [Zip Code Count]
WHERE [Zip Code Count].[Zip Code] NOT IN (Select [Zip Code List].[Zip Code] From [Zip Code List])
UNION
Select [Covered Zips Count].[Zip Code], [Covered Zips Count].CountOfAddress1
FROM [Covered Zips Count]
Where [Covered Zips Count].CountOfAddress1 < 10;
Covered Zip Counts
和Zip Code Count
都是来自较大(800多个记录)数据集的聚合查询。 Zip Code List
是包含特定邮政编码的简单表格。
我要做的是列出不在Zip Code List
中的那些邮政编码加上在列表中但记录总数少于10的那些邮政编码的列表(这是通过邮寄方式进行批量邮寄是必需的。
我收到以下错误消息。
条件表达式中的数据类型不匹配
两个查询部分都可以正常工作。这两个查询的输出完全相同:邮政编码是文本,计数是整数。这个查询似乎应该可以,但是拒绝。
答案 0 :(得分:0)
我想我已经解决了这个问题。。。我试图进行单独的查询,然后将它们合并到另一个查询中。这给了我同样的错误,所以我试图删除一个字段。然后我得到了错误“查询太复杂”。因此,我猜该软件无法处理它。
我最终将邮政编码的原始聚合查询转换为Make Table查询。一旦有了可靠的数据集,我首先尝试的UNION查询就可以完美地工作。