首页 / 浏览问题 / 组件GIS / 问题详情
如何在同一个数据集中对多个字段按属性选择
70EXP 2023年06月25日

单个字段筛选都能成功,多个字段筛选就出错。

例如下图,已将shp存入进udb中,格式是UDB。我想筛选出预警>0 AND(网格划分=1 OR 断面划分=1)的记录个数,按理说是个数为5

我的代码是 int a = rset_fishnet_Cal.getDataset().query("预警>0and网格划分=1",CursorType.STATIC).getRecordCount()+

rset_fishnet_Cal.getDataset().query("预警>0and断面划分=1",CursorType.STATIC).getRecordCount();

但结果是0。我有去查看sql查询手册,说的不是很清楚。我应该怎么修改代码才可以正确读取筛选后的结果。

1个回答

您好,根据您描述的信息,有以下 2 点需要注意:

  1. SQL 查询的时候需要使用字段名称,不能使用字段别名,建议检查“预警”、“网格划分”和“断面划分”的字段名称是否与截图中属性表显示的中文名称一致;
  2. 查询条件之间需要空格,如:
    int a = rset_fishnet_Cal.getDataset().query("预警>0 and 网格划分=1",CursorType.STATIC).getRecordCount() + rset_fishnet_Cal.getDataset().query("预警>0 and 断面划分=1",CursorType.STATIC).getRecordCount()

希望可以帮到您。

2,258EXP 2023年06月26日
谢谢您的帮助,是没有空格的原因
...