A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://developers.arcgis.com/javascript/latest/api-reference/esri-rest-support-Query.html below:

Query | API Reference | ArcGIS Maps SDK for JavaScript 4.33

ESM: import Query from "@arcgis/core/rest/support/Query.js";

CDN: const Query = await $arcgis.import("@arcgis/core/rest/support/Query.js");

Class: @arcgis/core/rest/support/Query

Since: ArcGIS Maps SDK for JavaScript 4.20

This class defines parameters for executing queries for features from a layer or layer view. Once a Query object's properties are defined, it can then be passed into an executable function, which will return the features in a FeatureSet.

There are three types of queries: attribute, spatial, and statistic queries. You can query for features in one of these categories or use elements of each in a single query.

Attribute queries Number and strings

To query features based on attribute values, specify a SQL where clause in the where property. You can optionally use the text property for a LIKE statement. Setting the outFields of the query will limit the attributes returned from the query. This can improve the speed of the query if your app doesn't require all the attributes for each feature.

For example, you can use where to query all counties in the state of Washington from a layer representing U.S. Counties:

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

// To return a feature set containing the attributes: STATE_NAME, COUNTY_NAME, POPULATION, and POP_DENSITY.
const featureSet = await featureLayer.queryFeatures(query)
Date and times

When querying features based on date, date-only, time-only and timestamp-offset field types the DATE, TIMESTAMP or TIME SQL functions should be used to make sure the query returns correct results. The following snippets demonstrate how the date functions can be constructed with the functions mentioned above.

<DateField> = DATE 'YYYY-MM-DD'
<DateField> = TIMESTAMP 'YYYY-MM-DD HH:MI:SS'
<DateOnlyField> = DATE 'YYYY-MM-DD'
<TimeOnlyField> = TIME 'HH:MM:SS'
<TimestampOffsetField> = TIMESTAMP 'YYYY-MM-DD HH:MI:SS +/-UTC offset'

Date values are stored as epoch values in date field. Epoch time describes a point in time as the number of seconds since 00:00:00 Thursday, 1 January 1970 (UTC). A date field can be associated with a specific time zone. When querying values from a date field, you may need to convert dates to match the time zone of the field. Use the FieldsIndex.getTimeZone() method to identify the time zone of a date field. For example, if your service has two date fields, one in America/Los_Angeles and the other in America/New_York, then date queries need to be crafted specifically for each field. If the desired query date is 01/01/2012 11:20:00 PM GMT then the resulting query could be:

query.where = "DateTime_PST = TIMESTAMP '2012-01-01 15:20:00", or

query.where = "DateTime_EST = TIMESTAMP '2012-01-01 18:20:00".

// Query for features that recorded on January 1, 2012 9:00:00 AM GMT
// DateTime_PST date field values are in PST. Must adjust the epoch values to PST

const queryDate = new Date(1325408400000); // 01/01/2012 9:00:00 AM GMT
let queryFields = ["DateTime_PST"];

// get the timezone of the DateTime_PST date field
const fieldTimeZone = layer.fieldsIndex.getTimeZone("DateTime_PST") ;

// we need to adjust the date value to match the time zone of the field.
const where = `DateTime_PST < DATE '${getDateForTimeZone(queryDate, fieldTimeZone)}'`
layerView.filter = new FeatureFilter({
  where
});
runQueries(where, queryFields);

// This function conveniently formats a dates in terms of the parsed time zone.
function getDateForTimeZone(queryDate, timezone) {

  // adjust the given date field to the timezone of the date field
  const zonedDate = new Date(
    queryDate.toLocaleString("en-US", {
      timeZone: timezone
    })
  );
  const pad = (value) => String(value).padStart(2, "0");
  const month = pad(zonedDate.getMonth() + 1);
  const day = pad(zonedDate.getDate())
  const year = zonedDate.getFullYear();
  const hour = pad(zonedDate.getHours());
  const minutes = pad(zonedDate.getMinutes());
  const seconds = pad(zonedDate.getSeconds());

  return `${year}-${month}-${day} ${hour}:${minutes}:${seconds}`;
}

Please refer to Querying Feature Services: Date-Time Queries and REST API - Date-time queries documents to learn more about how to query date-time values.

Spatial queries

You can query features by geometry/location. While where is not required in this workflow, you can use where as part of the query to get more refined results.

To execute a spatial query, you must set the geometry parameter to a Geometry object and specify a valid spatialRelationship. You can optionally provide a query distance and units to query features against a buffer around the given geometry.

For example, to query for all features within 2 miles of a mouse move, you would do the following:

view.on("pointer-move", async (event) => {
  const 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"];

  // The following line returns features within two miles of the pointer's location
  const { features } = await featureLayer.queryFeatures(query);
});

You could also use where, for example, to return all features with a population greater than 10,000 within the 2-mile buffer.

Known Limitations

For client side spatial queries on 3D Object SceneLayerView the Extent of the feature is used when evaluating the spatial relationship with the geometry. This means that a feature might be returned from the query, even though its footprint is not in a spatial relationship with the geometry.

Temporal queries

You can query features based on a given time range by specifying the timeExtent property. The temporal query will return results only if the feature service is published with timeInfo information. The temporal query can also be combined with attribute and geometry queries.

For example, you can use timeExtent and where parameters to query specified hurricane tracks within a given time extent.

// 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)
  }
});
const { features } = await featureLayer.queryFeatures(query);
Statistic queries

Rather than return individual features from a query, you can return statistics for field attributes and expressions. Statistic queries are defined by the outStatistics parameter, which requires an array of StatisticDefinition objects.

For example, you can query for the average and total population of counties in the layer mentioned above in the following manner:


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

// query for the average population in all features
const 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
const populationChangeDefinition = {
  onStatisticField: "POP_2015 - POP_2010",  // service field for 2015 population
  outStatisticFieldName: "avg_pop_change_2015_2010",
  statisticType: "avg"
};

const query = layer.createQuery();
query.where = "STATE_NAME = 'Washington'";
query.outStatistics = [sumPopulation, avgPopulation, populationChangeDefinition];

const { feature } = await featureLayer.queryFeatures(query);
const { attributes } = features[0];

console.log(`The total population in WA is ${attributes.Pop_2015_sum}`);
console.log(`The average population in WA counties is ${attributes.Pop_2015_avg}`);
console.log(`The average population change in WA counties is ${attributes.avg_pop_change_2015_2010}`);
Working with results

Query results can be used in a number of ways depending on the use case. Consider the following parameters which impact the format of the resulting feature set.

See also
Constructors
Query Constructor new Query(properties)

Parameter

optional

See the properties for a list of all the properties that may be passed into the constructor.

Property Overview Any properties can be set, retrieved or listened to. See the Watch for changes topic.

Show inherited properties Hide inherited properties

Name Type Summary Class aggregateIds Array<(number|string)>|null|undefined

An array of Object IDs representing aggregate (i.e.

Query cacheHint Boolean|null|undefined

Indicates if the service should cache the query results.

Query datumTransformation Number|SimpleTransformation|CompositeTransformation|null|undefined

Datum transformation used for projecting geometries in the query results when outSpatialReference is different than the layer's spatial reference.

Query declaredClass String

The name of the class.

Accessor distance Number|null|undefined

Specifies a search distance from a given geometry in a spatial query.

Query gdbVersion String|null|undefined

Specifies the geodatabase version to display for feature service queries.

Query geometry GeometryUnion|null|undefined

The geometry to apply to the spatial filter.

Query geometryPrecision Number|null|undefined

Specifies the number of decimal places for geometries returned by the JSON query operation.

Query groupByFieldsForStatistics String[]|null|undefined

Used only in statistical queries.

Query having String|null|undefined

A condition used with outStatistics and groupByFieldsForStatistics to limit query results to groups that satisfy the aggregation function(s).

Query historicMoment Date|null|undefined

The historic moment to query.

Query maxAllowableOffset Number|null|undefined

The maximum distance in units of outSpatialReference used for generalizing geometries returned by the query operation.

Query maxRecordCountFactor Number

When set, the maximum number of features returned by the query will equal the maxRecordCount of the service multiplied by this factor.

Query multipatchOption String|null|undefined

Parameter dictates how the geometry of a multipatch feature will be returned.

Query num Number|null|undefined

The number of features to retrieve.

Query objectIds Array<(number|string)>|null|undefined

An array of ObjectIDs to be used to query for features in a layer.

Query orderByFields String[]|null|undefined

One or more field names used to order the query results.

Query outFields String[]|null|undefined

Attribute fields to include in the FeatureSet.

Query outSpatialReference SpatialReference|null|undefined

The spatial reference for the returned geometry.

Query outStatistics StatisticDefinition[]|null|undefined

The definitions for one or more field-based statistics to be calculated.

Query parameterValues HashMap<(string|string[]|number|number[]|Date|Date[])>|null|undefined

Filters features from the layer based on pre-authored parameterized filters.

Query pixelSize Point|null|undefined

Specifies the pixel level to be identified on the X and Y axis.

Query quantizationParameters Accessor|null|undefined

Used to project the geometry onto a virtual grid, likely representing pixels on the screen.

Query rangeValues Object[]|null|undefined

Filters features from the layer that are within the specified range values.

Query relationParameter String|null|undefined

The Dimensionally Extended 9 Intersection Model (DE-9IM) matrix relation (encoded as a string) to query the spatial relationship of the input geometry to the layer's features.

Query returnCentroid Boolean

If true, each feature in the returned FeatureSet will be returned with a centroid.

Query returnDistinctValues Boolean

If true then the query returns distinct values based on the field(s) specified in outFields.

Query returnExceededLimitFeatures Boolean

If true, then all features are returned for each tile request, even if they exceed the maximum record limit per query indicated on the service by maxRecordCount.

Query returnGeometry Boolean

If true, each feature in the returned FeatureSet includes the geometry.

Query returnM Boolean|null|undefined

If true, and returnGeometry is true, then m-values are included in the geometry.

Query returnQueryGeometry Boolean

If true, the query geometry will be returned with the query results.

Query returnZ Boolean|null|undefined

If true, and returnGeometry is true, then z-values are included in the geometry.

Query spatialRelationship String

For spatial queries, this parameter defines the spatial relationship to query features in the layer or layer view against the input geometry.

Query sqlFormat String|null|undefined

This parameter can be either standard SQL92 standard or it can use the native SQL of the underlying datastore native.

Query start Number|null|undefined

The zero-based index indicating where to begin retrieving features.

Query text String|null|undefined

Shorthand for a where clause using "like".

Query timeExtent TimeExtent|null|undefined

A time extent for a temporal query against time-aware layers.

Query units String|null|undefined

The unit for calculating the buffer distance when distance is specified in spatial queries.

Query where String|null|undefined

A where clause for the query.

Query Property Details

An array of Object IDs representing aggregate (i.e. cluster) graphics. This property should be used to query features represented by one or more cluster graphics with the given Object IDs.

This is useful in the following scenarios:

Known Limitations

This property only applies to LayerView query methods. Support for server-side queries is being considered for a future release.

Example

// Will execute query for features represented by the clusterGraphic
if (clusterGraphic.isAggregate) {
  query.aggregateIds = [clusterGraphic.getObjectId()];
}

Indicates if the service should cache the query results. It only applies if the layer's capabilities.query.supportsCacheHint is set to true. Use only for queries that have the same parameters every time the app is used. Some examples of cacheable queries:

Datum transformation used for projecting geometries in the query results when outSpatialReference is different than the layer's spatial reference. Requires ArcGIS Server service 10.5 or greater.

declaredClass

Inherited

Property declaredClass Stringreadonly

The name of the class. The declared class name is formatted as esri.folder.className.

Specifies a search distance from a given geometry in a spatial query. The units property indicates the unit of measurement. In essence, setting this property creates a buffer at the specified size around the input geometry. The query will use that buffer to return features in the layer or layer view that adhere to the to the indicated spatial relationship.

If querying a feature service, the supportsQueryWithDistance capability must be true.

Specifies the geodatabase version to display for feature service queries.

The geometry to apply to the spatial filter. The spatialRelationship will indicate how the geometry should be used to query features.

Known Limitations

Mesh geometry types are currently not supported.

Used only in statistical queries. When one or more field names are provided in this property, the output statistics will be grouped based on unique values from those fields. This is only valid when outStatistics has been defined.

Example

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

A condition used with outStatistics and groupByFieldsForStatistics to limit query results to groups that satisfy the aggregation function(s).

The following aggregation functions are supported in this clause: MIN | MAX | AVG | SUM | STDDEV | COUNT | VAR

Aggregation functions used in having must be included in the outStatistics as well. See the snippet below for an example of how this works.

For service-based layer queries, this parameter applies only if the supportsHavingClause property of the layer is true. This property is supported on all LayerView queries.

Example

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

The historic moment to query. This parameter applies only if the supportsQueryWithHistoricMoment capability of the service being queried is true. This setting is provided in the layer resource.

The maximum distance in units of outSpatialReference used for generalizing geometries returned by the query operation. It limits how far any part of the generalized geometry can be from the original geometry. If outSpatialReference is not defined, the spatialReference of the data is used.

maxRecordCountFactor Property maxRecordCountFactor Number

When set, the maximum number of features returned by the query will equal the maxRecordCount of the service multiplied by this factor. The value of this property may not exceed 5.

For example, if the maxRecordCount of your feature service is 2000, and you set the maxRecordCountFactor to 5, then the maximum number of features that could be returned by the query is 10000.

Known Limitations

Only supported with ArcGIS Online hosted services or ArcGIS Enterprise 10.6 services and higher.

Parameter dictates how the geometry of a multipatch feature will be returned. Currently, the only supported value is xyFootprint. If indicated, the xy footprint of each multipatch geometry will be returned in the result.

Example

// url to the layer of interest to query
const queryUrl = "https://sampleserver6.arcgisonline.com/arcgis/rest/services/Notes/FeatureServer/0";

const queryObject = new Query({
  objectIds: [22],
  multipatchOption: "xyFootprint",
  outFields: ["*"],
  returnGeometry: true
});

// call the executeQueryJSON() method
query.executeQueryJSON(queryUrl, queryObject).then(function(results){
  // results.graphics contains the graphics returned from query
});

The number of features to retrieve. This option should be used in conjunction with the start property. Use this to implement paging (i.e. to retrieve "pages" of results when querying).

If not provided, but an instance of Query has a start property, then the default value of num is 10. If neither num nor start properties are provided, then the default value of num is equal to the maxRecordCount of the service, which can be found at the REST endpoint of the FeatureLayer.

An array of ObjectIDs to be used to query for features in a layer.

One or more field names used to order the query results. Specify ASC (ascending) or DESC (descending) after the field name to control the order. The default order is ASC.

Known Limitations

Example

query.orderByFields = ["STATE_NAME DESC"];

Attribute fields to include in the FeatureSet. Fields must exist in the service layer. You must list actual field names rather than field aliases. You may, however, use field aliases when you display the results of the query.

When specifying the output fields, you should limit the fields to only those you expect to use in the query or the results. The fewer fields you include, the smaller the payload size, and therefore the faster the response of the query.

You can also specify SQL expressions as outFields to calculate new values server side for the query results. See the example snippets below for an example of this.

Each query must have access to the Shape and ObjectId fields for a layer. However, the list of outFields does not need to include these two fields.

Known Limitations

Examples

// 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" ]

The spatial reference for the returned geometry. If not specified, the geometry is returned in the spatial reference of the queried layer.

Example

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

query.outStatistics = [ statisticDefinition ];

Filters features from the layer based on pre-authored parameterized filters. When value is not specified for any parameter in a request, the default value, that is assigned during authoring time, gets used. Requires an ArcGIS Enterprise service 10.5 or greater. This parameter is only supported with MapImageLayer pointing to a map service.

Specifies the pixel level to be identified on the X and Y axis. Defaults to the base resolution of the dataset if not specified. Applicable only to Image Service layers.

Used to project the geometry onto a virtual grid, likely representing pixels on the screen. Geometry coordinates are converted to integers by building a grid with a resolution matching the quantizationParameters.tolerance. Each coordinate is then snapped to one pixel on the grid.

Known Limitations

Only supported with ArcGIS Online hosted services or ArcGIS Enterprise 10.6.1 services.

Properties

An extent defining the quantization grid bounds. Its SpatialReference matches the input geometry spatial reference if one is specified for the query. Otherwise, the extent will be in the layer's spatial reference.

Geometry coordinates are optimized for viewing and displaying of data.

Possible Values:"view"|"edit"

Default Value:"upper-left"

The integer's coordinates will be returned relative to the origin position defined by this property value.

Possible Values:"upper-left"|"lower-left"

Default Value:1

The size of one pixel in the units of the outSpatialReference. This number is used to convert coordinates to integers by building a grid with a resolution matching the tolerance. Each coordinate is then snapped to one pixel on the grid. Consecutive coordinates snapped to the same pixel are removed for reducing the overall response size. The units of tolerance will match the units of outSpatialReference. If outSpatialReference is not specified, then tolerance is assumed to be in the units of the spatial reference of the layer. If tolerance is not specified, the maxAllowableOffset is used. If tolerance and maxAllowableOffset are not specified, a grid of 10,000 * 10,000 grid is used by default.

Example

let query = new Query();
query.quantizationParameters = {
  mode: "view",
  originPosition: "upper-left",
  tolerance: 4820,
  extent: layer.fullExtent
};

Filters features from the layer that are within the specified range values. Requires ArcGIS Enterprise services 10.5 or greater.This parameter is only supported with MapImageLayer pointing to a map service.

The Dimensionally Extended 9 Intersection Model (DE-9IM) matrix relation (encoded as a string) to query the spatial relationship of the input geometry to the layer's features. This string contains the test result of each intersection represented in the DE-9IM matrix. Each result is one character of the string and may be represented as either a number (maximum dimension returned: 0,1,2), a Boolean value (T or F), or a mask character (for ignoring results: '*').

Set this parameter when the spatialRelationship is relation. The Relational functions for ST_Geometry topic has additional details on how to construct these strings.

Known Limitations

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

Example

let query = new Query({
  relationParameter: "FFFTTT***"
});
returnCentroid Property returnCentroid Boolean

If true, each feature in the returned FeatureSet will be returned with a centroid. This property only applies to queries against polygon FeatureLayers.

Known Limitations

Only supported with ArcGIS Online hosted services or ArcGIS Enterprise 10.6.1 services.

returnDistinctValues Property returnDistinctValues Boolean

If true then the query returns distinct values based on the field(s) specified in outFields.

Known Limitations

returnExceededLimitFeatures Property returnExceededLimitFeatures Boolean

If true, then all features are returned for each tile request, even if they exceed the maximum record limit per query indicated on the service by maxRecordCount. If false, the tile request will not return any features if the maxRecordCount limit is exceeded.

Known Limitations

Only supported with ArcGIS Online hosted services or ArcGIS Enterprise 10.6 services and higher.

returnGeometry Property returnGeometry Boolean

If true, each feature in the returned FeatureSet includes the geometry.

Known Limitations

If true, and returnGeometry is true, then m-values are included in the geometry.

If true, and returnGeometry is true, then z-values are included in the geometry.

spatialRelationship Property spatialRelationship String

For spatial queries, this parameter defines the spatial relationship to query features in the layer or layer view against the input geometry. The spatial relationships discover how features are spatially related to each other. For example, you may want to know if a polygon representing a county completely contains points representing settlements.

The spatial relationship is determined by whether the boundaries or interiors of a geometry intersect.

The possible values for this parameter are described below and the images highlight the geometries returned for the specified spatial relationship for given geometries.

The intersects spatial relationship returns features in the layer view that intersect the query geometry.

The contains spatial relationship returns features in the layer view that are completely contained by the query geometry.

The crosses spatial relationship returns features in the layer view when the interior of a query geometry comes into contact with the interior or boundary of features in the layer view. In other words, the geometries share some interior area, but not all interior area.

The envelope-intersects spatial relationship returns features in the layer view that intersect the envelope (or extent) of the filter geometry.

The overlaps spatial relationship returns features in the layer view that overlap the query geometry. Only features of the same geometry can be compared.

The touches spatial relationship returns features in the layer view that touch the query geometry. The boundaries of the geometries intersect, but not their interiors.

The within spatial relationship returns features in the layer view that completely contain the query geometry. In other words, the filter geometry is completely within the features in the layer view. It is opposite of contains.

The disjoint spatial relationship returns features in the layer view that do not intersect the query geometry in anyway. Opposite of intersects.

Known Limitations

Possible Values:"intersects" |"contains" |"crosses" |"disjoint" |"envelope-intersects" |"index-intersects" |"overlaps" |"touches" |"within" |"relation"

Example

let query = new Query({
  spatialRelationship: "contains"
});

This parameter can be either standard SQL92 standard or it can use the native SQL of the underlying datastore native. See the ArcGIS REST API documentation for more information.

Known Limitations

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

Possible Values:"none" |"standard" |"native"

The zero-based index indicating where to begin retrieving features. This property should be used in conjunction with num. Use this to implement paging and retrieve "pages" of results when querying. Features are sorted ascending by object ID by default.

Shorthand for a where clause using "like". The field used is the display field defined in the services directory.

A time extent for a temporal query against time-aware layers. For example, it can be used to discover all crimes that occurred during the night shift from 10 PM to 6 AM on a particular date.

Example

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) { ... });

The unit for calculating the buffer distance when distance is specified in spatial queries. If units is not specified, the unit is derived from the geometry spatial reference. If the geometry spatial reference is not specified, the unit is derived from the feature service data spatial reference. For service-based queries, this parameter only applies if the layer's capabilities.query.supportsDistance is true.

Possible Values:"feet" |"miles" |"nautical-miles" |"us-nautical-miles" |"meters" |"kilometers"

Example

// 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);

A where clause for the query. Any legal SQL where clause operating on the fields in the layer is allowed. Be sure to have the correct sequence of single and double quotes when writing the where clause in JavaScript.

Examples

query.where = "NAME = '" + stateName + "'";
query.where = "POP04 > " + population;
Method Overview

Show inherited methods Hide inherited methods

Method Details
addHandles

Inherited

Method addHandles(handleOrHandles, groupKey)

Since: ArcGIS Maps SDK for JavaScript 4.25 Accessor since 4.0, addHandles added at 4.25.

Adds one or more handles which are to be tied to the lifecycle of the object. The handles will be removed when the object is destroyed.

// Manually manage handles
const handle = reactiveUtils.when(
  () => !view.updating,
  () => {
    wkidSelect.disabled = false;
  },
  { once: true }
);

this.addHandles(handle);

// Destroy the object
this.destroy();

Parameters

Handles marked for removal once the object is destroyed.

groupKey *

optional

Key identifying the group to which the handles should be added. All the handles in the group can later be removed with Accessor.removeHandles(). If no key is provided the handles are added to a default group.

clone Method clone(){Query}

Creates a deep clone of Query object.

Returns

Type Description Query A new instance of a Query object equal to the object used to call .clone().

Creates a new instance of this class and initializes it with values from a JSON object generated from an ArcGIS product. The object passed into the input json parameter often comes from a response to a query operation in the REST API or a toJSON() method from another ArcGIS product. See the Using fromJSON() topic in the Guide for details and examples of when and how to use this function.

Returns

Type Description * | null | undefined Returns a new instance of this class.
hasHandles

Inherited

Method hasHandles(groupKey){Boolean}

Since: ArcGIS Maps SDK for JavaScript 4.25 Accessor since 4.0, hasHandles added at 4.25.

Returns true if a named group of handles exist.

Parameter

groupKey *

optional

A group key.

Returns

Type Description Boolean Returns true if a named group of handles exist.

Example

// Remove a named group of handles if they exist.
if (obj.hasHandles("watch-view-updates")) {
  obj.removeHandles("watch-view-updates");
}
removeHandles

Inherited

Method removeHandles(groupKey)

Since: ArcGIS Maps SDK for JavaScript 4.25 Accessor since 4.0, removeHandles added at 4.25.

Removes a group of handles owned by the object.

Parameter

groupKey *

optional

A group key or an array or collection of group keys to remove.

Example

obj.removeHandles(); // removes handles from default group

obj.removeHandles("handle-group");
obj.removeHandles("other-handle-group");
Type Definitions
CompositeTransformation Type Definition CompositeTransformation Object
Properties
Specification

the spatial reference well known id.

indicates whether to transform forward or not.

SimpleTransformation Type Definition SimpleTransformation Object
Property

the spatial reference well known id


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4