Overpass Tutorial
- 00 - The Beginning
- 01 - Finding nodes with a bounding box
- 02 - Outputting data about nodes
- 03 - Filtering nodes that have a tag
- 04 - Find nodes by matching tags and their values
- 05 - Find nodes by applying multiple filters
- 06 - Extracting multiple sets of nodes
- 07 - Calculating differences between results
- 08 - Generating JSON output
- 09 - Generating CSV output
- 10 - The default set
- 11 - Querying a set
- 12 - Searching within a radius using around
- 13 - Using around to filter against a set of results
- 14 - Searching by polygon
- 15 - Finding ways
- 16 - Ways and their nodes
- 17 - Ways and their tags
- 18 - Combining node and way queries
- 19 - Finding ways from their nodes
- 20 - Finding relations
- 21 - Type agnostic queries (nwr)
- 22 - Areas
- 23 - Finding the areas enclosing a feature
- 24 - Find the area derived from a feature
- 25 - Areas via Nominatim search
- 26 - Timeouts and endpoints
07 - Calculating differences between results
The previous example demonstrated how to create a union from multiple
node
queries.
The sets of results returned by each query statement are merged to produce the output.
We can also calculate the difference between two sets of results.
We do this by using the minus operator. The general syntax is:
( statement1; - statement2; )
The result will be those nodes (or ways or relations) returned by
statement1
that weren't returned by statement2
.
This query finds all nodes that are tagged as tourist areas and are not also tagged as caves.
We can achieve the same thing using a simple tag filter, but this helps to illustrate the basic syntax.
Source File | 07-nodes-differences.osm |
Authors |
|