我正在从类似数据的数据中选择记录:
Dim foundRows() as DataRow = dt.Select("country = 'United States' AND speed = 0 OR speed >= 1000 AND speed <= 2000 AND status = 'Unknown' OR status = 'Valid' OR status = 'Invalid'")
您可以看到,我想从美国选择其速度为0或1000-2000的记录,其状态未知,有效或无效。
也正在选择不符合这些标准的不幸记录(例如:速度&lt; 1000,其他国家的记录)
我的过滤器表达式有什么问题?我尝试在速度条件下添加括号,但也许我需要更多?
您必须使用括号:
country = 'United States' AND
(speed = 0 OR (speed >= 1000 AND speed <= 2000)) AND
(status = 'Unknown' OR status = 'Valid' OR status = 'Invalid')