vb.net datatable.select返回无效行



我正在从类似数据的数据中选择记录:

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')

最新更新