FC-12 - Structured Query Language (SQL) and attribute queries
The structured query language (SQL) for database interrogation is presented and illustrated with a few examples using attribute tables one might find in a common GIS database. A short background is presented on the history and goals that the creators of the SQL language hoped to achieve, followed by a review of SQL utility for data query, editing, and definition. While the SQL language is rich in content and breadth, this article attempts to build on a simple SQL and then iteratively add additional complexity to highlight the power that SQL affords to the GIS professional who has limited programming capabilities. The reader is asked to consider how minor modifications to SQL syntax can add complexity and even create more dynamic mathematical models with simple English-like command statements. Finally, the reader is challenged to consider how terse SQL statements may be used to replace relatively long and laborious command sequences required by a GIS GUI approach.
FC-13 - Spatial Queries
Spatial query is a crucial GIS capability that distinguishes GIS from other graphic information systems. It refers to the search for spatial features based on their spatial relations with other features. This article introduces a spatial query's essential components, including target feature(s), reference feature(s), and the spatial relation between them. The spatial relation is the core component in a spatial query. The document introduces the three types of spatial relations in GIS: proximity relations, topological relations, and direction relations, along with query examples to show the translation of spatial problems to spatial queries based on each type of relations. It then discusses the characteristics of the reasoning process for each type of spatial relations. Except for topological relations, the other two types of spatial relations can be measured either quantitatively as metric values or qualitatively as verbal expressions. Finally, the general approaches to carrying out spatial queries are summarized. Depending on the availability of built-in query functions and the unique nature of a query, a user can conduct the query by using built-in functions in a GIS program, writing and executing SQL statements in a spatial database, or using customized query tools.