属性概述
名称 | 类型 | 描述 | 对象 |
---|---|---|---|
String[] | where 子句中使用的字段名称数组。 更多详情 | WhereClause | |
Boolean | 如果解析的 where 子句满足标准化 sql 要求,则返回 | WhereClause | |
SQLNode | 解析树是用于表示已解析 sql 语句的数据结构。 更多详情 | WhereClause |
属性详细信息
-
where 子句中使用的字段名称数组。它可用于在查询图层时获取相应的字段。
示例// parse layer's definition expression into where clause object sql.parseWhereClause(layer.definitionExpression, layer.fieldsIndex) .then(function(clause){ layer.queryFeatures({ where: "1=1", // where clause object returns layer fields // use these fields to query features from the layer outFields: clause.fieldsNames }).then(function(results) { // process query results }); });
-
isStandardized Booleanreadonly
-
如果解析的 where 子句满足标准化 sql 要求,则返回
true
。
-
parseTree SQLNode起始版本:GeoScene Maps SDK for JavaScript 4.24
-
解析树是用于表示已解析 sql 语句的数据结构。解析语句需要使用编写该语句的语言的语法。
方法概述
名称 | 返回值类值 | 描述 | 对象 |
---|---|---|---|
Object | 对要素执行 where 子句以生成值。 更多详情 | WhereClause | |
Boolean | 根据 | WhereClause |
方法详细说明
-
calculateValue(feature){Object}
-
对要素执行 where 子句以生成值。当
WhereClause
用作简单表达式时,则使用它。例如,您可使用表达式来收集统计值。参数feature Object检查 where 子句的要素。
返回类型 描述 Object 根据提供的 where 子句,检查要素后返回一个值。如果提供的值未知,则返回 null
。示例// calculate the grand total sales price of all features featureLayer.queryFeatures().then(function(results){ let total; const expression = "totalSales * totalPrice"; sql.parseWhereClause(expression, layer.fieldsIndex) .then(function(whereClause){ // check if the where clause meets requirements of standardized sql if (whereClause.isStandardized){ features.forEach(function(feature){ total += whereClause.calculateValue(feature) }); console.log(total); // prints the total sales price of all features } }); });
-
testFeature(feature){Boolean}
-
根据
whereClause
测试要素的属性,如果测试通过,则返回true
,否则返回false
。参数feature Object用于测试
whereClause
的要素。返回类型 描述 Boolean 如果测试通过,则返回 true
,否则返回false
。示例sql.parseWhereClause("POPULATION > 100000", layer.fieldsIndex) .then(function(clause){ let testResult = clause.testFeature(new Graphic({ attributes: { POPULATION: 300000 } }); console.log(testResult); // prints true });
类型定义
-
BinaryNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
二进制表达式节点。它是一个运算符,定义了将两个表达式组合在一起以产生单个结果的方式。它可以是算术运算符、赋值运算符 (=)、比较运算符 (>=)、逻辑运算符 (AND) 或字符串连接运算符 (+)。
-
BoolNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
包含布尔表达式的节点。用于表示可以是 true 或 false 的条件或标准。
-
ColumnNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
包含图层或表的列名的节点。
-
CurrentTimeNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
包含
CURRENT_TIME
或CURRENT_DATE
函数的节点。
-
DateNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
包含日期的节点。
-
FunctionNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
包含 SQL 函数的节点。
-
IntervalNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
间隔节点表示字符文本是一个间隔。间隔定义为两个日期和时间之间的差异。
- 属性
-
type String
值通常是 "interval"。
value StringNode间隔节点值。
op String间隔节点符号。
可能值:"+"|"-"|""
qualifier IntervalQualifierNode|IntervalPeriodNode间隔限定符可以是单个日期时间字段,也可由两个日期时间字段组成,格式为:
TO 。
-
IntervalPeriodNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
间隔周期节点。
-
IntervalQualifierNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
包含间隔限定符的节点。间隔限定符可以是单个日期时间字段,也可由两个日期时间字段组成,格式为:
<leading field> TO <trailing field>
。
-
ListNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
包含列表的节点。
-
NullNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
包含
NULL
值的节点。
-
NumberNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
包含数字的节点。
-
SearchedCaseNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
包含 case 表达式的节点。
-
SimpleCaseNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
简单 Case 表达式节点。Case 表达式可提供解码功能,允许将一个表达式转换为另一个表达式。Case 表达式可以出现在可使用其他表达式形式的任何位置。
-
起始版本:GeoScene Maps SDK for JavaScript 4.24
-
SQL 解析树由 SqlNodes 组成。它可以是运算符、文本、函数、列表等。
-
StringNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
包含字符串的节点。
-
TimeStampNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
包含日期的节点。
-
UnaryNode Object起始版本:GeoScene Maps SDK for JavaScript 4.24
-
包含一元运算符的节点。一元运算符仅可应用于对数值数据类型类别的任何一种数据类型求值的表达式。