Query

AMD: require(["geoscene/rest/support/Query"], (Query) => { /* 代码 */ });
ESM: import Query from "@geoscene/core/rest/support/Query";
类: geoscene/rest/support/Query
继承于: Query Accessor
起始版本: GeoScene API for JavaScript 4.22

此类定义用于从图层或图层视图执行要素查询的参数。一旦定义了 Query 对象的属性,就可以将其传递给可执行函数,该函数将返回FeatureSet中的特征。

查询分为三种类型:属性查询、空间查询和统计查询。您可以查询这些类别之一中的要素,或在单个查询中使用每个类别的元素。

属性查询

要根据属性值查询要素,请在where属性中指定 SQL where 子句。您可以选择将text属性用于LIKE语句。设置查询的outFields 将限制查询返回的属性。如果您的应用不需要每个功能的所有属性,这可以提高查询速度。

例如,您可以使用where从代表县的图层中查询某一范围内的所有县:

let query = featureLayer.createQuery();
query.where = "STATE_NAME = 'Washington'";
query.outFields = [ "STATE_NAME", "COUNTY_NAME", "POPULATION", "(POPULATION / AREA) as 'POP_DENSITY'" ];

featureLayer.queryFeatures(query)
  .then(function(response){
     // returns a feature set with features containing the following attributes
     // STATE_NAME, COUNTY_NAME, POPULATION, POP_DENSITY
   });

空间查询

您可以按几何/位置查询要素。虽然在此工作流程中不需要wherewhere ,但您可以将其用作查询的一部分以获得更精确的结果。

要执行空间查询,您必须将几何参数设置为 Geometry对象并指定有效的spatialRelationship。您可以选择提供查询距离单位,以针对给定几何图形周围的缓冲区查询要素。

例如,要查询鼠标移动 2 英里范围内的所有要素,您可以执行以下操作:

view.on("pointer-move", function(event){
  let query = featureLayer.createQuery();
  query.geometry = view.toMap(event);  // the point location of the pointer
  query.distance = 2;
  query.units = "miles";
  query.spatialRelationship = "intersects";  // this is the default
  query.returnGeometry = true;
  query.outFields = [ "POPULATION" ];

  featureLayerView.queryFeatures(query)
    .then(function(response){
      // returns a feature set with features containing the
      // POPULATION attribute and each feature's geometry
    });
});

例如,您还可以使用where来返回 2 英里缓冲区内人口超过 10,000 的所有要素。

已知限制

对于 3D 对象 SceneLayerView 上的客户端空间查询,在评估几何的空间关系时使用要素的范围。这意味着可能会从查询中返回一个要素,即使它的足迹与几何图形没有空间关系。

时间查询

您可以通过指定 timeExtent 属性根据给定时间范围查询要素。仅当使用 timeInfo 信息发布要素服务时,时态查询才会返回结果。时间查询也可以与属性和几何查询相结合。

例如,您可以使用timeExtentwhere参数查询给定时间范围内指定的飓风轨迹。

// query katrina tracks that took place in Aug 30 - Aug 31, 2005
const query = new Query({
  outFields: ["Name, WindSpeed"],
  where: "Name = 'Katrina'",
  timeExtent: {
    start: new Date(2005, 7, 30),
    end: new Date(2005, 7, 31)
  }
});
featureLayer.queryFeatures(query)
  .then(function(response){
     // process the results
   });

统计查询

您可以返回字段属性和表达式的统计信息,而不是从查询中返回单个要素。统计查询由outStatistics参数定义,该参数需要一个StatisticDefinition对象数组。

例如,您可以通过以下方式查询上述图层中县的平均人口和总人口:


// query for the sum of the population in all features
let sumPopulation = {
  onStatisticField: "POP_2015",  // service field for 2015 population
  outStatisticFieldName: "Pop_2015_sum",
  statisticType: "sum"
};

// query for the average population in all features
let avgPopulation = {
  onStatisticField: "POP_2015",  // service field for 2015 population
  outStatisticFieldName: "Pop_2015_avg",
  statisticType: "avg"
};

// Notice that you can pass a SQL expression as a field name to calculate statistics
let populationChangeDefinition = {
  onStatisticField: "POP_2015 - POP_2010",  // service field for 2015 population
  outStatisticFieldName: "avg_pop_change_2015_2010",
  statisticType: "avg"
};

let query = layer.createQuery();
query.where = "STATE_NAME = 'Washington'";
query.outStatistics = [ sumPopulation, avgPopulation, populationChangeDefinition ];
layer.queryFeatures(query)
  .then(function(response){
     let stats = response.features[0].attributes;
     console.log("Total Population in WA": stats.Pop_2015_sum);
     console.log("Average Population in WA counties": stats.Pop_2015_avg);
     console.log("Average Population change in WA counties": stats.avg_pop_change_2015_2010);
  });

处理结果

查询结果可以根据用例以多种方式使用。考虑以下影响结果特征集格式的参数。

  • returnGeometry - 返回几何图形对于在视图中以图形形式显示结果或进行进一步的空间分析很有用。如果您的工作流程中不需要几何图形,则不要请求它来提高应用程序性能。
  • outStatistics - 查询统计信息将永远不会从图层返回要素,只会返回具有请求统计信息的数字属性的对象。
  • returnDistinctValues - 将字段中存在的唯一值作为字符串数组返回,因此当此参数为 true 时不返回任何特征。
示例:

构造函数

new Query(properties)
参数:
properties Object
optional

所有可传入构造函数的属性,请参见属性列表

属性列表

可以设置、检索或监听的属性。参见 使用属性
展示继承属性 隐藏继承属性
属性 类型 描述
Number[] 更多信息

表示 聚合 对象的ID数组 

更多信息 Query
Boolean 更多信息

指示服务是否应缓存查询结果。

更多信息 Query
Number 更多信息

当 outSpatialReference 与图层的空间参考不同时,用于在查询结果中投影几何的基准转换 。

更多信息 Query
String 更多信息

类名。

更多信息 Accessor
Number 更多信息

指定到空间查询中给定几何的搜索距离。

更多信息 Query
String 更多信息

指定要为要素服务查询显示的地理数据库版本。

更多信息 Query
Geometry 更多信息

应用于空间过滤器的几何体。

更多信息 Query
Number 更多信息

指定查询操作返回的几何图形的小数位数。

更多信息 Query
String[] 更多信息

仅用于统计查询

更多信息 Query
String 更多信息

与 outStatistics 和 groupByFieldsForStatistics 一起使用的条件,用于将查询结果限制为满足聚合函数的数组。

更多信息 Query
Date 更多信息

历史时刻查询。

更多信息 Query
Number 更多信息

以 outSpatialReference 为单位的最大距离,用于概括查询操作返回的几何。

更多信息 Query
Number 更多信息

设置后,查询返回的最大特征数将等于 maxRecordCount服务乘以该因子。

更多信息 Query
String 更多信息

参数指示如何返回多面体要素的几何。

更多信息 Query
Number 更多信息

要检索的特征数。

更多信息 Query
Number[] 更多信息

用于查询图层中的要素的 ObjectID 数组。

更多信息 Query
String[] 更多信息

用于对查询结果进行排序的一个或多个字段名称。

更多信息 Query
String[] 更多信息

要包含在FeatureSet中的属性字段。

更多信息 Query
SpatialReference 更多信息

返回几何的空间参考。

更多信息 Query
StatisticDefinition[] 更多信息

要计算的一个或多个基于字段的统计数据的定义。

更多信息 Query
Object[] 更多信息

根据预先编写的参数化过滤器过滤图层中的功能。

更多信息 Query
Point 更多信息

指定要在 X 和 Y 轴上识别的像素级别。

更多信息 Query
Object 更多信息

用于将几何体投影到虚拟网格上,代表屏幕上的像素。

更多信息 Query
Object[] 更多信息

从图层中过滤指定范围值内的要素。

更多信息 Query
String 更多信息

Dimensionally Extended 9 Intersection Model (九交) 矩阵关系(编码为字符串),用于查询输入几何与图层特征的空间关系

更多信息 Query
Boolean 更多信息

如果为 true,则返回的FeatureSet中的每个特征都将返回一个质心。

更多信息 Query
Boolean 更多信息

如果为 true ,则查询根据outFields中指定的字段返回不同的值。

更多信息 Query
Boolean 更多信息

如果为 true,则为每个图块请求返回所有特征,即使它们超过了服务上指示的每个查询的最大记录限制 maxRecordCount

更多信息 Query
Boolean 更多信息

如果为 true则返回的FeatureSet中的每个特征都包含几何。

更多信息 Query
Boolean 更多信息

如果该值和 returnGeometry 都为 true, 则 m 值包含在几何中。

更多信息 Query
Boolean 更多信息

如果为 true查询几何将与查询结果一起返回。

更多信息 Query
Boolean 更多信息

如果该值和 returnGeometry 都为 true, 则 z 值包含在几何中。

更多信息 Query
String 更多信息

对于空间查询,此参数定义了在图层或图层视图中针对输入几何查询要素的空间关系。

更多信息 Query
String 更多信息

此参数可以是标准 SQL92 standard,也可以使用底层数据存储的本机 SQL native

更多信息 Query
Number 更多信息

从零开始的索引,指示从何处开始检索要素。

更多信息 Query
String 更多信息

使用“like”的 where 子句的简写。

更多信息 Query
TimeExtent 更多信息

针对时间感知层的时间查询的时间范围。

更多信息 Query
String 更多信息

空间查询中指定距离时计算缓冲距离的单位。

更多信息 Query
String 更多信息

查询的 where 子句。

更多信息 Query

属性详细说明

aggregateIds Number[]

表示 聚合(即集群)图形的对象 ID 数组。此属性应用于查询由具有给定对象 ID 的一个或多个集群图形表示的要素。

这在以下情况下很有用:

  • 将集群中包含的要素显示为图形集合。
  • 将集群特征推送到视图的弹出窗口以供浏览。
  • 在弹出窗口中显示包含在集群中的特征的统计信息。

已知限制

此属性仅适用于LayerView查询方法。我们正在考虑在未来的版本中支持服务器端查询。

示例代码:
// Will execute query for features represented by the clusterGraphic
if( clusterGraphic.isAggregate ){
  query.aggregateIds = [ clusterGraphic.getObjectId() ];
}
cacheHint Boolean

指示服务是否应缓存查询结果。它仅适用于图层的 capabilities.query.supportsCacheHint设置为true时。仅用于每次使用应用程序时具有相同参数的查询。可缓存查询的一些示例:

默认值:undefined
datumTransformation Number

当 outSpatialReference 与图层的空间参考不同时,用于在查询结果中投影几何的基准转换 。需要 GeoScene Server 服务 2.0 或更高版本。

declaredClass Stringreadonly inherited

类名。类的名称声明格式为 geoscene.folder.className

distance Number

指定到空间查询中给定几何的搜索距离。units 属性表示测量单位。本质上,设置此属性会在输入geometry周围创建一个指定大小的缓冲区。查询将使用该缓冲区在图层或图层视图中返回符合指定空间关系的要素。

如果查询要素服务,supportsQueryWithDistance 必须被设置为true

gdbVersion String

指定要为要素服务查询显示的地理数据库版本。

geometry Geometryautocast

应用于空间过滤器的几何图形。由 spatialRelationship 指定的空间关系 将指示应如何使用几何图形来查询要素。

已知限制

当前不支持网格几何类型。

geometryPrecision Number

指定查询操作返回的几何图形的小数位数。

groupByFieldsForStatistics String[]

仅用于 统计查询。当此属性中提供一个或多个字段名称时,输出统计信息将根据这些字段的唯一值进行分组。这仅 在定义了outStatistics 时有效。

示例代码:
query.outStatistics = [{
  onStatisticField: "CUSTOMERS",
  outStatisticFieldName: "avg_customers",
  statisticType: "avg"
}, {
  onStatisticField: "RATING",
  outStatisticFieldName: "min_rating",
  statisticType: "min"
}, {
  onStatisticField: "1=1",
  outStatisticFieldName: "total_businesses",
  statisticType: "count"
}];
query.groupByFieldsForStatistics = [ "region" ];

// query the above stats for each region in the layer
layer.queryFeatures(query).then(displayResults);
having String

与 outStatistics 和 groupByFieldsForStatistics 一起使用的条件,用于 将查询结果限制为满足聚合函数的组。

本子句支持以下聚合函数:MINMAXAVGSUMSTDDEVCOUNT|VAR

中使用的聚合函数也having必须包含在outStatistics中。有关其工作原理的示例,请参见下面的代码段。

对于基于服务的图层查询,仅当图层的 supportsHavingClause 属性为 true 时,此参数才适用。所有 LayerView 查询都支持此属性。

示例:
示例代码:
query.outStatistics = [{
  onStatisticField: "CUSTOMERS",
  outStatisticFieldName: "avg_customers",
  statisticType: "avg"
}, {
  onStatisticField: "RATING",
  outStatisticFieldName: "min_rating",
  statisticType: "min"
}, {
  onStatisticField: "1=1",
  outStatisticFieldName: "total_businesses",
  statisticType: "count"
}];
query.groupByFieldsForStatistics = [ "region" ];
query.having = "AVG(CUSTOMERS) >= 1,000 AND MIN(RATING) >= 3";

// query the above stats for all regions where
// the average number of daily customers per business is
// greater than 1,000 and the minimum customer rating
// for a business within the region is 3
layer.queryFeatures(query).then(displayResults);
historicMoment Date

历史性时刻查询。仅当supportsQueryWithHistoricMomenttrue 时,此参数才适用。此设置在图层资源中提供。

maxAllowableOffset Number

以 outSpatialReference 为单位的最大距离,用于概括查询操作返回的几何。它限制了广义几何的任何部分与原始几何的距离。如果outSpatialReference未定义,则使用数据的 spatialReference。

已知限制

此属性不适用于 LayerView 或 CSVLayer 查询。

maxRecordCountFactor Number

设置后,查询返回的最大特征数将等于 maxRecordCount服务乘以该因子。该属性的值不得超过5.

例如,您的要素服务的maxRecordCount2000,并且您将 maxRecordCountFactor设置为5,则查询可以返回的最大要素数是10000

已知限制

仅支持 GeoScene Online 托管服务或 GeoScene Enterprise 2.0 服务。

默认值:1
multipatchOption String

参数指示如何返回多面体要素的几何。目前,唯一支持的值是xyFootprint. 如果指定,每个多面体几何的 xy 轨迹将在结果中返回。

示例代码:
let queryTask = new QueryTask( ... );
let query = new Query({
  objectIds: [22],
  multipatchOption: "xyFootprint",
  outFields: ["*"],
  returnGeometry: true
});
queryTask.execute(query);
num Number

要检索的特征数。此选项应与start 属性结合使用。使用它来实现分页(即在查询时检索结果的“页面”)。

如果未提供,但 Query 的实例有start属性,则num默认值为10。如果未提供numstart属性,则默认值num等于服务的 maxRecordCount ,该值可在 REST 端点特征图层找到。

objectIds Number[]

用于查询图层中的要素的 ObjectID 数组。

orderByFields String[]

用于对查询结果进行排序的一个或多个字段名称。 在字段名称后指定ASC(升序)或DESC(降序)以控制顺序。默认顺序是ASC.

已知限制

  • 如果查询MapImageLayer,则supportsAdvancedQueries必须true在服务上。
  • 对于FeatureLayerFeatureLayer.capabilities.queryRelated.supportsOrderBy必须是true.
示例:
示例代码:
query.orderByFields = ["STATE_NAME DESC"];
outFields String[]

要包含在FeatureSet中的属性字段。字段必须存在于服务图层中。您必须列出实际的字段名称而不是字段别名。但是,您可以在显示查询结果时使用字段别名。

指定输出字段时,应将字段限制为仅希望在查询或结果中使用的字段。您包含的字段越少,有效负载大小越小,因此查询的响应速度就越快。

您还可以指定 SQL 表达式为outFields来为查询结果计算服务器端的新值。有关此示例,请参阅下面的示例片段。

每个查询都必须有权访问图层的ShapeObjectId字段。但是,outFields 列表不需要包括这两个字段。

已知限制

  • 如果将 outFields 指定为基于要素服务的FeatureLayer上的表达式,则服务功能 advancedQueryCapabilities.supportsOutFieldSQLExpressionuseStandardizedQueries都必须为真。
默认值:null
示例代码:
// query for field attributes
query.outFields = [ "NAME", "STATE_ABBR", "POP04" ];
// query for data returned from an expressions and other fields as the following field names
// POP_CHANGE_2020, NAME, POP2020
// where POP_CHANGE_2020 represents the population change from 2010 - 2020
query.outFields = [ "( (POP2020 - POP2010) / POP2010 ) * 100 as POP_CHANGE_2020", "NAME", "POP2020" ]
outSpatialReference SpatialReferenceautocast

返回几何的空间参考。如果未指定,则在查询图层的空间参考中返回几何。

自动转换自 Object[]

要计算的一个或多个基于字段的统计数据的定义。如果指定outStatistics,则应该使用的唯一其他查询参数是groupByFieldsForStatistics、 orderByFieldstextwhere

已知限制

对于基于服务的查询,outStatistics仅在supportsStatistics = true时支持。

示例代码:
let query = new Query();
let statisticDefinition = new StatisticDefinition({
  statisticType: "sum",
  onStatisticField: "POP2000",
  outStatisticFieldName: "TotalPop"
});

query.outStatistics = [ statisticDefinition ];
parameterValues Object[]

根据预先编写的参数化过滤器过滤图层中的功能。如果未为请求中的任何参数指定值,则使用在创作期间分配的默认值。需要 GeoScene Enterprise 服务 2.0 或更高版本。只有指向地图服务的MapImageLayer才支持此参数 。

属性:
name String

参数名称。

单个值或值数组。

示例:
pixelSize Pointautocast

指定要在 X 和 Y 轴上识别的像素级别。如果未指定,则默认为数据集的基本分辨率。仅适用于影像服务图层。

quantizationParameters Object

用于将几何体投影到虚拟网格上,比如代表屏幕上的像素。通过构建分辨率与quantizationParameters.tolerance相匹配的网格。 然后将每个坐标捕捉到网格上的一个像素。

已知限制

仅支持 GeoScene Online 托管服务或 GeoScene Enterprise 2.0 服务。

属性:
extent Extent
optional

定义量化网格边界的范围。如果为查询指定了空间参考,则其 SpatialReference 与输入几何空间参考相匹配。否则,范围将在图层的空间参考中。

mode String
optional

几何坐标针对数据的查看和显示进行了优化。

可选值:"view"|"edit"

originPosition String
optional
默认值:upper-left

整数的坐标将相对于此属性值定义的原点位置返回。

可选值:"upper-left"|"lower-left"

tolerance Number
optional
默认值:1

以 outSpatialReference 为单位的一个像素的大小。该数字用于通过构建分辨率与公差匹配的网格,将坐标转换为整数。然后将每个坐标捕捉到网格上的一个像素。捕捉到同一像素的连续坐标将被删除,以减小整体响应大小。 公差单位将与 outSpatialReference 参考单位相匹配。 如果未指定 outSpatialReference ,则假定公差以图层的空间参考为单位。如果未指定公差,则使用 maxAllowableOffset 。如果未指定公差和 maxAllowableOffset ,默认情况下使用10000*10000网格的网格。

示例代码:
let query = new Query();
query.quantizationParameters = {
  mode: "view",
  originPosition: "upper-left",
  tolerance: 4820,
  extent: layer.fullExtent
};
rangeValues Object[]

从图层中过滤指定范围值内的要素。需要 GeoScene Enterprise 服务 2.0 或更高版本。只有 MapImageLayer 指向 地图服务 时才支持此参数 

属性:
name String

范围标识。

values Number|Number[]

单个值或值范围。

示例:
relationParameter String

Dimensionally Extended 9 Intersection Model (九交模型) 矩阵关系(编码为字符串),用于查询输入几何与图层特征的空间关系。此字符串包含 DE-9IM 矩阵中表示的每个交叉点的测试结果。每个结果都是字符串的一个字符,可以表示为数字(返回的最大维度:0、1、2)、布尔值(T 或 F)或掩码字符(用于忽略结果:'*') .

spatialRelationship 为 relation 时设置此参数。

已知限制

此属性不适用于图层视图或CSVLayer查询。

示例代码:
let query = new Query({
  relationParameter: "FFFTTT***"
});
returnCentroid Boolean

如果为true,则返回的FeatureSet的每个要素都将返回一个质心。此属性仅适用于针对多边形FeatureLayers的查询。

已知限制

仅支持 GeoScene Online 托管服务或 GeoScene Enterprise 2.0 服务。

默认值:false
returnDistinctValues Boolean

如果为 true ,则查询根据 outFields 中指定的字段返回不同的值。

已知限制

  • 对于基于服务的查询,此参数仅在图层的supportsAdvancedQueriestrue时适用。
  • 确保将returnGeometry设置为falsereturnDistinctValues为 true。否则,将不会返回可靠的结果。
默认值:false
returnExceededLimitFeatures Boolean

如果为true,则为每个图块请求返回所有特征,即使它们的每个查询的最大记录限制超过了服务上指示的maxRecordCount如果为false,且如果maxRecordCount超出限制,切片请求将不会返回任何特征。

已知限制

仅支持 GeoScene Online 托管服务或 GeoScene Enterprise 2.0 服务。

默认值:true
returnGeometry Boolean

如果为true,则返回的FeatureSet中的每个要素都包含几何。

已知限制

对于 FeatureLayerView 查询,返回的几何图形的精度将仅与视图的比例分辨率一样高,因为几何图形已被量化以提高视图的性能。比例越小,几何图形的分辨率越低。

此限制不适用于FeatureLayerCSVLayerCSVLayerView查询。

默认值:false
returnM Boolean

如果为true并且returnGeometrytrue,则 m 值包含在几何中。

returnQueryGeometry Boolean

如果为true查询几何将与查询结果一起返回。这对于获取按距离查询要素时生成的缓冲区几何图形或获取投影在查询的outSpatialReference中的查询几何图形很有用。查询几何仅针对 客户端查询 和 托管要素服务 以及图层的capabilities.query.supportsQueryGeometry 为true时返回。

默认值:false
returnZ Boolean

如果为true并且returnGeometrytrue,则 z 值包含在几何中。

已知限制

FeatureLayerView.queryFeatures()、 GeoJSONLayerView.queryFeatures() 和 OGCFeatureLayerView.queryFeatures() 结果在2D MapView中调用时不包括 z 值,即使returnZ设置为true

spatialRelationship String

对于空间查询,此参数定义了在图层或图层视图中针对输入几何查询要素的空间关系。空间关系发现特征在空间上是如何相互关联的。例如,您可能想知道代表县的多边形是否完全包含代表定居点的点。

空间关系取决于几何图形的边界或内部是否相交。

  • 边界 - 线要素的所有线性部分的端点,或多边形的线性轮廓。只有线和多边形有边界。
  • 内部 — 点完全在内部,没有边界。对于线和多边形,内部是几何图形中不属于边界的任何部分。

该参数的可能值如下所述,图像突出显示为给定几何图形的指定空间关系返回的几何图形。

intersects空间关系在图层视图中返回与查询几何相交的要素

intersects

contains空间关系返回图层视图中完全包含在查询几何中的要素。

contains

crosses查询几何的内部与图层视图中要素的内部或边界接触时,空间关系将返回图层视图中的要素。换句话说,几何图形共享一些内部区域,但不是所有内部区域。

crosses

envelope-intersects空间关系在图层视图中返回与过滤器几何的包络(或范围)相交的要素

envelope-intersects

overlaps空间关系在图层视图中返回与查询几何重叠的要素。只能比较相同几何形状的特征。

overlaps

空间关系在touches图层视图中返回与查询几何相关的要素。几何形状的边界相交,但内部不相交。

touches

within空间关系返回图层视图中完全包含查询几何的要素。换句话说,过滤器几何图形完全within图层视图中的要素内。它与 contains相反。

within

disjoint 空间关系在图层视图中返回的要素无论如何都不会与查询 geometry 相交。 与 intersects 相反。

disjoint

已知限制

  • 对于 3D 对象 SceneLayers 和 BuildingSceneLayers 上的空间查询,空间关系是根据要素的 范围而不是足迹进行评估的。这意味着可能会从查询中返回一个要素,即使它的足迹与几何图形没有空间关系。
  • 目前, 3D Object SceneLayers 和 BuildingSceneLayers的空间 查询 仅支持intersectscontainsdisjoint 放的 spatialRelationships  。

可选值:"intersects"|"contains"|"crosses"|"disjoint"|"envelope-intersects"|"index-intersects"|"overlaps"|"touches"|"within"|"relation"

默认值:intersects
示例代码:
let query = new Query({
  spatialRelationship: "contains"
});
sqlFormat String

此参数可以是标准 SQL92 standard,也可以使用底层数据存储的本机 SQL native。有关详细信息,请参阅 GeoScene REST API 文档 。

已知限制

This property does not apply to layer view or CSVLayer queries.

可选值:"none"|"standard"|"native"

默认值:none
start Number

从零开始的索引,指示从何处开始检索要素。此属性应与num结合使用。使用它来实现分页并在查询时检索结果的“页面”。默认情况下,要素按对象 ID 升序排序。

text String

使用“like”的 where 子句的简写。使用的字段是在服务目录中定义的显示字段。

默认值:null
timeExtent TimeExtentautocast

针对 时间感知层 的时间查询的时间范围。例如,它可用于发现在特定日期从晚上 10 点到早上 6 点的夜间发生的所有犯罪。

示例代码:
let layer = new FeatureLayer( ... );
let timeExtent = new TimeExtent({
  start: new Date(1992, 0, 1),
  end: new Date(1992, 11, 31)
});
let timeQuery = new Query({
  timeExtent: timeExtent
});
layerView.queryFeatures(timeQuery).then(function(featureSet) { ... });
units String

空间查询中指定 距离 时计算缓冲距离的单位。如果units未指定,则单位派生自几何空间参考。如果未指定几何空间参考,则单位派生自要素服务数据空间参考。对于基于服务的查询,此参数仅适用于图层的 capabilities.query.supportsDistancetrue的时候。

可选值:"feet"|"miles"|"nautical-miles"|"us-nautical-miles"|"meters"|"kilometers"

默认值:null
示例代码:
// Query at a distance in pixels of the query geometry.
// Use the unit of the query geometry's spatial reference.
layerView.queryFeatures({
  geometry: event.mapPoint,
  distance: 2 * view.resolution,
  returnGeometry: true
}).then(processResults);
where String

查询的 where 子句。允许对图层中的字段进行任何合法的 SQL where 子句。在 JavaScript 中编写 where 子句时,请务必使用正确的单引号和双引号顺序。

示例代码:
query.where = "NAME = '" + stateName + "'";
query.where = "POP04 > " + population;

方法列表

属性 返回值类型 描述
Query 更多信息

创建 Query 对象的深拷贝。

更多信息 Query
* 更多信息

创建此类的新实例并使用从 GeoScene产品生成的 JSON 对象的值对其进行初始化。

更多信息 Query
Object 更多信息

将此类的实例转换为其 GeoScene portal JSON 格式。

更多信息 Query

方法详细说明

clone(){Query}

创建 Query 对象的深拷贝。

返回值:
类型 描述
Query Query 对象的新实例,等于用于调用的.clone()对象。
fromJSON(json){*}static

创建此类的新实例,并使用从 GeoScene 产品生成的 JSON 对象的值对其进行初始化。传递给输入 json 参数的对象通常来自对 REST API 中的查询操作的响应,或者来自另一个 GeoScene产品的 toJSON() 方法。有关何时以及如何使用此函数的详细信息和示例,请参阅指南中的 使用 fromJSON() 主题。

参数:
json Object

实例的 json 表达式,以geoscene 格式显示。

返回值:
类型 描述
* 返回一个该类的新实例。
toJSON(){Object}

将此类的实例转换为 GeoScene portal JSON 格式。 有关更多信息,请参阅 使用 fromJSON() 指南。

返回值:
类型 描述
Object 此类实例的 GeoScene portal JSON 格式。

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.