Operator 必须使用的操作符为:<、>、<=、>=、<>、= 或 LIKE。
这个筛选不是 SQL 语句,如果不行,直接用 SQL 语句好了,比较灵活。

解决方案 »

  1.   

    en?
    原以为是where之后的呢
    直接用sql吧
      

  2.   

    说明用 Filter 属性选择性地屏蔽 Recordset 对象中的记录。已过滤的 Recordset 成为当前游标。基于当前游标返回值的其他属性将受到影响,如 AbsolutePosition、AbsolutePage、RecordCount 及 PageCount。这是因为将 Filter 属性设置为特定值可将当前记录移动到满足新值的第一个记录。条件字符串由 FieldName-Operator-Value 格式(如“LastName = 'Smith'”)子句组成。通过连接单独的 AND(如“LastName = 'Smith' AND FirstName = 'John'”)或 OR(如“LastName = 'Smith' OR LastName = 'Jones'”)子句可以创建复合子句。关于条件字符串,请遵循以下规则: FieldName 必须是 Recordset 中有效的字段名。如果字段名包含空格,必须将字段名括在方括号中。
    Operator 必须是下列字符串之一:<、>、<=、>=、<>、= 或 LIKE。
    Value 是用于与字段值进行比较的值(如 'Smith'、#8/24/95#、12.345 或 $50.00)。字符串使用单引号,日期使用磅符号 (#)。数字可以使用小数点、美元符号和科学符号。如果 Operator 为 LIKE,则 Value 可以使用通配符。只允许使用星号 (*) 和百分号 (%) 通配符,而且必须是字符串的尾字符。Value 不能为 Null。 
    注意   若要在过滤 Value 中包括单引号 ('),请用两个单引号表示一个引号。例如,若要过滤 O'Malley,则条件字符串应为“col1 = 'O''Malley'”。若要在过滤值的开始和结尾处都包括单引号,请用磅符号 (#) 将字符串括起来。例如,若要过滤“'1'”,则条件字符串应为“col1 = #'1'#”。 AND 和 OR 在级别上没有先后之分。可用括号将子句分组。但不能象下例所示那样先将由 OR 连接的子句分组,然后再用 AND 将该组连接到其他子句: 
    (LastName = 'Smith' OR LastName = 'Jones') AND FirstName = 'John'与之相反,可将此过滤构造为 
    (LastName = 'Smith' AND FirstName = 'John') OR (LastName = 'Jones' AND FirstName = 'John')在 LIKE 子句中,可在模式的开头和结尾使用通配符(如 LastName Like '*mit*'),或者只在模式的结尾使用通配符(如 LastName Like 'Smit*')。 的确