我有一个带一堆where子句的选择查询。我测试了几种情况,它们运行良好!但是测试了另一种情况,它本来应该返回任何内容。
在访问中,我使用了“创建查询”功能,我输入了所有相同的值,并返回了4条记录,这是预期的结果!那么,为什么我的查询无法找到这些记录?
Set rstV = cdb.OpenRecordset("SELECT * FROM " & tableVName & " WHERE ValveSize IN (" & mVSize & "," & mLineSize & ") AND ValveFamily = '" & confgType & _
"' AND CV >= " & mCV & " AND NO = 'X'")
当我删除NO ='X'时,它会找到一堆记录(包括我要查找的记录),但是我需要NO ='X'才能明确找到这4条记录。
我觉得'X'可能以某种方式导致了此问题,但在其他情况下仍然有效。我试着看了列字段的属性,一切看起来都很好...
请帮助!
答案 0 :(得分:2)
据我所知,YES和NO可能是值,因此请尝试在NO周围使用方括号:
[NO] = 'X'