Presentation is loading. Please wait.

Presentation is loading. Please wait.

Spatial queries in SQL Server 2008 SQL Bits III – 13 th September 2008.

Similar presentations


Presentation on theme: "Spatial queries in SQL Server 2008 SQL Bits III – 13 th September 2008."— Presentation transcript:

1 Spatial queries in SQL Server 2008 SQL Bits III – 13 th September 2008

2  New data types geometry and geography  Spatial references  Spatial operations  Spatial indexes  Case study

3  80-90% of all data has a spatial element  Where are your customers?  Where are your assets?  Where are potential customers?  Where are the flood risks?  Where are your complaints coming from?  Where are the accident black-spots?  Where are crimes happening?

4  Postcodes in Glasgow  Zoned  Historical reasons  G5 adjacent to G42  G40 in an island  Postcodes designed for delivering letters

5  The data analysis engine  No useful rendering engine  Virtual Earth  Map Point  Other GIS systems  OGC Standards compliance  Plus some “extension” methods of their own

6  X/Y coordinate on a planar grid  British National Grid  Works well to ~750,000km 2  Different projections

7  Geodetic coordinates  Covers larger areas  International datasets  Approximation  Earth actually flattened sphere (oblate spheroid)  Different models  Airy 1830 (used by OS)  WGS84 (used by GPS)

8  Spatial Reference Identifier  All spatial data has an SRID  SRIDs must match for spatial operations  Null returned if SRIDs don’t match  Geometry can have an SRID of 0  Not Geography.

9  Point  LineString  Polygon  GeomCollection  MultiPolygon  MultiLineString  MultiPoint From BOL

10 colin@scottishdevelopers.com http://www.colinmackay.net

11 SELECT a.Name AS StartVenue, b.Name AS EndVenue, a.Location.STDistance(b.Location) / 1000.0 As Distance FROM Venue AS a INNER JOIN Venue AS b ON a.Id < b.Id ORDER BY a.Id, b.Id GCU60 Dundee U62102 MS TVP520537572 MS Edin’66658521 HBOSGCUDundee UMS TVP

12  A linestring is a series of coordinates  1 dimension  Defines a linear object  Road  Railway line  River

13  Can use  STGeomFromText  STGeomFromWKB  STLineFromText  STLineFromWKB  Parse

14 colin@scottishdevelopers.com http://www.colinmackay.net

15  Geography uses SI Units  Geometry uses the units of the planar system The square of the hypotenuse is equal to the sum of the square of the other two sides Not to scale 3 units 4 units ? units Distance from A to B: √(3 2 +4 2 ) = 5 A B

16 colin@scottishdevelopers.com http://www.colinmackay.net

17  A series of coordinates in a closed ring  First and last coordinate are the same  2 dimensions  Defines an area

18  Interior is everything inside an anti-clockwise ring  Everything on the left- hand side of the perimeter line.

19 The specified input does not represent a valid geography instance because it exceeds a single hemisphere. Each geography instance must fit inside a single hemisphere. A common reason for this error is that a polygon has the wrong ring orientation.

20  Can use  STGeomFromText  STGeomFromWKB  STPolygonFromText  STPolygonFromWKB  Parse

21 colin@scottishdevelopers.com http://www.colinmackay.net

22  Estate Agent  Filter by price, # bedrooms, type – EASY!  Filter by location?  Until now very vague

23 N e a r a r a i l w a y s t a t i o n N e a r m y w o r k N e a r a m o t o r w a y j u n c t i o n Near a good school I n s i d e t h e c i t y O u t s i d e t h e c i t y

24  Railway data  Stations  Routes

25 colin@scottishdevelopers.com http://www.colinmackay.net

26  Edinburgh - Glenrothes (via Kirkcaldy) Name DistKM -------------------------- ---------------- Edinburgh Waverley Station 0 Haymarket 1.89298770395887 South Gyle 6.95446540329848 Burntisland 12.086984317701 Dalmeny 12.49585147351 Kinghorn 13.1439998546632 Aberdour 13.3392361220632 North Queensferry 14.3833962761344 Dalgety Bay 15.0082794626365 Inverkeithing 15.7316327831032 Kirkcaldy 17.9484646860063 Glenrothes With Thornton 23.7022936117453

27 colin@scottishdevelopers.com http://www.colinmackay.net

28

29  Decomposes space into 4 levels of grid  Level 1 is the top  Cells are uniform in a level  A level can be a 4x4, 8x8 or 16x16 grid  8x8 by default

30  Table must have a primary key  Primary key cannot subsequently be changed.  Not on views  Maximum of 249 Spatial indexes per column

31  Where geometry/ geography sizes vary  e.g. Rail routes  Small: Suburban lines  Large: Intercity lines

32  Supports  STIntersects  STEquals  STDistance  One Geography must be a point  Both sides of the spatial operation must have the same SRID

33  Must specify boundary of spatial area  Additional methods supported  STContains  STOverlaps  STTouches  STWithin

34  CodePlex project  More spatial methods  Aggregations  Scripts http://www.codeplex.com/sqlspatialtools

35  GML  Import and export  M and Z  Can store  Cannot operate.  Other spatial Operations  Geometry has more!  Visualisation .NET application integration  Data Importing

36  Slide Deck on my website  http://www.colinmackay.net http://www.colinmackay.net  Blog posts on Spatial Data  http://blog.colinmackay.net http://blog.colinmackay.net

37


Download ppt "Spatial queries in SQL Server 2008 SQL Bits III – 13 th September 2008."

Similar presentations


Ads by Google