GIS按属性选择怎么选多个?SQL条件如何设?
“选了这个就不能选那个?”——属性选择的多条件困局
上周一位在国土规划院实习的研究生私信我:“Dr. Gis,我在做村庄用地分类统计,想同时选出‘耕地’和‘林地’,但每次只能选一个,导出两次太麻烦了,有没有办法一次搞定?”这问题太典型了——不是软件不会,而是你没搞懂SQL的“逻辑语法糖”。

我在参与全国生态红线划定项目时,曾需要从百万级图斑中筛选“坡度>25°且土地类型为林地或草地”的区域。如果只会单选,那工作量简直能让人崩溃到辞职。
SQL不是外语,是“地理侦探”的推理语言
很多人把SQL当成编程语言,其实它更像侦探破案时的“线索串联术”。你想找“A或B”,就用 OR;想找“A且B”,就用 AND;想排除干扰项,就用 NOT。就这么简单。
举个生活化例子:假设你要去超市买水果,老板问你要什么?你说:“我要苹果或者梨子,但不要烂的。”翻译成SQL就是:
"水果类型" = '苹果' OR "水果类型" = '梨子' AND "状态" != '烂'注意!这里有个坑——AND优先级高于OR,所以上面这句话实际执行的是:“(苹果)或(梨子且非烂)”,可能漏掉“烂苹果”。正确写法应该加括号:
("水果类型" = '苹果' OR "水果类型" = '梨子') AND "状态" != '烂'实战演练:三步写出无bug的多条件SQL
我们以ArcGIS Pro为例(QGIS同理),目标:选出“用地类型为耕地或林地,且面积大于1公顷”的图斑。
- 打开属性表 → 点击“按属性选择”
- 构建表达式:
先选字段:"LAND_TYPE"
再写条件:= '耕地' OR "LAND_TYPE" = '林地'
接着加面积限制:AND "AREA_HA" > 1
完整语句:("LAND_TYPE" = '耕地' OR "LAND_TYPE" = '林地') AND "AREA_HA" > 1 - 点击“应用”,见证奇迹 —— 所有符合条件的图斑高亮显示,一键导出,效率提升10倍。
高级技巧:IN、LIKE、通配符让选择更聪明
如果你要选的类别超过3个(比如耕地、林地、草地、湿地),一个个写OR太啰嗦。这时候请祭出神器:IN。
"LAND_TYPE" IN ('耕地', '林地', '草地', '湿地')想模糊匹配?比如所有带“林”字的地类(乔木林、灌木林、经济林…),用 LIKE + 通配符 %:
"LAND_TYPE" LIKE '%林%'这些技巧在处理民政区划、POI分类、遥感解译标签时特别实用。
避坑指南:90%的人栽在这三个地方
| 错误类型 | 错误示例 | 正确写法 |
|---|---|---|
| 字段名没加引号 | LAND_TYPE = '耕地' | "LAND_TYPE" = '耕地' |
| 字符串没加单引号 | "LAND_TYPE" = 耕地 | "LAND_TYPE" = '耕地' |
| 逻辑优先级混乱 | A OR B AND C | (A OR B) AND C |
总结:从“点选菜鸟”到“批量高手”的跃迁
按属性选择多个要素,本质是掌握SQL的三种核心逻辑:AND(交集)、OR(并集)、IN/LIKE(模糊与枚举)。再加上括号控制优先级,你就能在百万数据中精准狙击目标。
下次遇到复杂筛选需求,别再手动Ctrl+Click了。打开SQL编辑器,写一行代码,让计算机替你打工。
你在项目中遇到过哪些“奇葩”的属性筛选需求?欢迎在评论区留言,我会挑三个最有代表性的,手把手帮你写出完美SQL语句!
相关文章
-
安睿驰数据如何批量处理?ArcPy自动化方案帮你解放双手(含:代码模板) 2026-03-03 08:30:02
-
安若初裴翊在GIS数据处理中能用ArcPy解决吗?(附:批量处理脚本) 2026-03-03 08:30:02
-
ArcPy如何批量处理安然产品数据?GIS自动化巡检方案(含:脚本源码) 2026-03-03 08:30:02
-
ArcPy如何批量处理平安产品带图片?GIS属性关联与自动化制图全解(附:完整代码) 2026-03-03 08:30:02
-
ArcPy能做什么副业?GIS数据处理接单实战攻略(附:需求渠道清单) 2026-03-03 08:30:02
-
批量处理GIS数据太慢?ArcPy自动化脚本开发教程(附:常用代码集) 2026-03-03 08:30:01
-
ArcPy批量处理数据卡顿?优化脚本运行效率的实战技巧(附:代码模板) 2026-03-03 08:30:01
-
城乡规划数据批量处理太慢?ArcPy脚本自动化方案(含:蔼若春代码实例) 2026-03-03 08:30:01
-
安仁承坪腰鼓队GIS空间分析,ArcPy门票数据自动化怎么搞?(附:Python脚本) 2026-03-03 08:30:01
-
ArcGIS入门学习路径怎么规划?新手必备资源包(含:软件安装与操作手册) 2026-03-03 08:30:01
-
ArcGIS自学从入门到精通有多难?GIS研习社独家资源包(含:实战案例) 2026-03-02 08:30:02
-
ArcGIS学习效率低?arcgis基础教程视频合集(含:练习数据) 2026-03-02 08:30:02
-
ArcGIS实战教程:空间分析结果总是出错?排查思路与核心参数详解!(附:检查清单) 2026-03-02 08:30:02
-
ArcGIS初学总报错?环境配置和工具箱核心操作避坑指南(含:参数速查表) 2026-03-02 08:30:02
-
新手入门ArcGIS学习卡壳?arcgis基础教程实操详解(附:数据集) 2026-03-02 08:30:02
-
ArcGIS模型构建器总是报错?高效自动化制图的流程优化方案(附:脚本工具箱) 2026-03-02 08:30:02
-
ArcGIS初学者如何快速上手?掌握这4大核心功能与实操技巧(附:学习路线图) 2026-03-02 08:30:02
-
ArcGIS零基础入门如何避坑?实战教学路线图(附:数据练习包) 2026-03-02 08:30:02
-
QGIS学习中如何处理dwg文件,附:CAD数据无缝衔接与坐标纠正常见问题集 2026-03-02 08:30:02
-
ArcGIS学习效率低怎么办?独家整理从入门到精通的实战心法(附:工具包) 2026-03-02 08:30:02
热门标签
最新资讯
2026-03-03 08:30:01
2026-03-02 08:30:02
2026-03-02 08:30:02
2026-03-02 08:30:02
2026-03-02 08:30:02
2026-03-02 08:30:02
2026-03-02 08:30:02
2026-03-02 08:30:02
2026-03-02 08:30:02
2026-03-02 08:30:02