Contains queries

This code will test the speed of a data query against the county database table, using ST_Contains, a spatial SQL point in polygon analysis tool. The geometry column of the county table (called geom) is the first input into ST_Contains, and the well-known text (WKT) point is added second. Once the SQL statement is executed, the point will be compared against all of the rows in the table to find if one of the county geometries contains the point described by the WKT point:

import pymapd
from pymapd import connect
connection = connect(user="mapd", password= "{password}",
host="{my.host.com}", dbname="mapd")
import time
point = "POINT(-80.896146 27.438610)"
cursor = connection.cursor()
print(time.time())
sql_statement = """SELECT name FROM county where ST_Contains(geom,'{0}');""".format(point)
cursor.execute(sql_statement)
print(time.time())
result = list(cursor)
print(result)
print(time.time())

The result of this script is as follows:

The geospatial query runs really fast, as you can see from the printed time signatures (in seconds). It takes only a few milliseconds to find that Okeechobee polygon contains the point location.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset