
This is a quick introduction to the purpose of the workshop, learning objectives, and the general schedule. You'll quickly see just how much material is packed into the workshop. You'll also get an opportunity to think about whether you want to follow this workshop in a serial fashion (preferred), or jump around to the topics that interest you most.
Installing SQL for ArcGIS Pro is easy. But in order to complete this workshop, you'll need the data, too. Make sure you download and unzip the scripts and two geodatabases.
SQL is easier than you think. But sometimes we need convincing. Before we jump into the training, it's important to see what SQL for ArcGIS Pro can do, and how easily it can do it. The real purpose of this lecture is to let you take in the power, flexibility, and innovation of SQL for ArcGIS Pro, and convince you that using it can transform your GIS career. So for the next 10 minutes, just sit back, and look at what SQL for ArcGIS Pro can do. While watching the video, keep thinking about the steps required in a traditional GIS process, and you'll begin to realize what writing SQL against geodatabases can accomplish.
As you start using SQL with your geodatabases, you will be learning a new skill for your GIS toolbox. And, for many traditional GIS users, SQL is a foreign concept. This lecture is going to discuss a number of important topics as you learn SQL and begin the process of communicating the importance of these tools to GIS colleagues:
An overview and case for of SQL for GIS professionals
Why traditional GIS can limit us
In this workshop we'll be using real world data - the Tompkins County, NY GIS. In fact, it's the same data that I use in my courses for SQLServer, Postgres, QGIS, Geoserver, SQLite, Python, and others. If you've been through my other courses, you might be getting a little tired of seeing the same data, but on the other hand, you have the unique perspective of solving the same problems with different GIS technologies. In fact, many students have used this experience to communicate their mastery of different software products during job interviews - impressing their potential employer with their breadth of knowledge of many GIS products.
So once again, we'll return to Tompkins County to answer basic and advanced GIS questions related to land parcels, infrastructure, natural resources, and demographics.
As an added bonus, we'll introduce a number of real-life scenarios to see the software in action.
You can perform all of your GIS analysis in SQL for ArcGIS Pro using a single command window. But, the product offers so much more.
In the previous lecture, you saw a lot of the GIS technology that is in SQL for ArcGIS Pro. But, we aren't really going to use it as a standalone GIS. Rather, we are focusing our attention on the SQL portion. So, virtually all of our time is going to be spent using the query component. This short video is going to show you how to navigate around the query component, so you'll want to become familiar with it before you start writing SQL queries against your geodatabase.
This is sort of a best practices discussion. While you can perform all of your GIS analysis in SQL for ArcGIS Pro using a single command window, the product offers so much more. In this lecture you'll see how to write SQL queries from scratch, leverage drag and drop features within the GUI, and utilize dialog based transforms allowing SQL for ArcGIS Pro to do the heavy lifting.
In addition, we'll discuss special functions to improve performance as it relates caching data, running queries locally or directly in the geodatabase, and special parallel processing functions. This is more of an introduction to the concepts, and we'll start implementing these ideas throughout the training.
In this course you are going to get enough instructing and practice to where you can start to stand on your own two feet, and improve your workflow with SQL for ArcGIS Pro. Standing is one thing. Sprinting is something entirely different. Just like anything else: skiing, golf, swimming, guitar, etc., to really master things, you're going to have to spend lots of time perfecting what you do. But, along the way, there are great resources to help you get there. In this lecture, I want to show you three resources: the help manual, the user community, and external sources.
We've spent a lot of time getting up-to-speed on what SQL for ArcGIS is, what SQL is, and all of the benefits. At this point, I hope you are excited about starting to write SQL queries with your Esri geodatabase. So for the next few hours, we are going to roll up our sleeves and start writing queries and discussing how they work. You'll work alongside me as you begin to better understand, and eventually become quite good at writing SQL queries.
You are going to use the SELECT statement 99% of the time. This lecture is going to introduce the basic select statement and some interesting parameters related to it, such as the conditional statements like WHERE, IN, <, >, =, and also how to modify the presentation to the user by using ORDER, FETCH, etc. You'll discover that writing even the most basic SQL queries are far more flexible than using a GUI in a traditional GIS setting.
Also, we'll look at special ways we can work with numeric, character, and date fields, and ways to even combine dissimilar data types together.
If you can do it in a spreadsheet, you can do it in SQL. So, if you need a quick answer like determining the ratio of sale price to assessment value for residential properties in the month of July in 2014 - no problem! SQL does that in one easy-to-write query. That's something that is very difficult to discover in a traditional GIS GUI, or even an Excel spreadsheet. And the best part of it is, you don't have to create new fields for calculations or export data to different formats. Just write the SQL on-the-fly, and you'll get your answer.
Aggregation queries are one of the more powerful functions in SQL. If you've ever written for loops in python or another language, you'll immediately see the benefit (and simplicity) that an aggregate function like GROUP BY offers. And, if you consider the effort you'll have to make to accomplish the same thing inside a GIS GUI, you'll be totally sold on using SQL.
In this lecture, we'll slice and dice some of the parcel data we've been working with to aggregate our data for different property classes, and different mathematical statements. This is definitely a lecture you don't want to miss.
We've selected records that meet certain conditions. We've performed calculations on those records, and we've aggregated the results. In this lecture, we'll expand some of our special functions for Date fields to show you how all of it can be rolled together into a single query. As you work through this, keep in mind the sheer headache this could cause using the standard GUI in the GIS.
Performing table joins is one of the more powerful features of SQL. In a traditional GIS, you use a wizard/gui to join two tables together. But, with SQL, the options are endless: you can join all the rows into two tables based on a common identifier(s), you can link selected records from both tables, and you can perform updates and analysis based on the links. Also, if the fields you want to relate have different data types, no problem - just CAST the column to the appropriate data type. No need to create new columns and recalculate the field in the correct format.
This lecture is going to go through a number of scenarios with some messy and complex soil databases. You'll be relating two, and three tables together, while also performing on-the-fly calculations in the joins. This is the stuff that's really hard in a GIS GUI, but really easy in SQL.
If there's one thing I hate about the standard GIS GUI's, it's updating data in bulk. But, SQL was really designed for this, and allows you to perform all kinds of updates and inserts into databases in all kinds of creative ways. And like all the SQL we've been exploring, when the query is written, it reads like common English. We're getting more complex, that's for sure. But, that complexity is still way easier than programming, and something you'll be able to use in your Esri workflow.
Before we jump into writing spatial SQL, this lecture is going to set some ground rules for applying best practices in working with the spatial components for SQL for ArcGIS Pro. Given the newness of the product, there are some things that aren't magically handled in the background. So, we'll learn how to deal with different datatypes and coordinate systems, and some of the internal tools to make life easier. I fully expect that a number of these issues will go away with more user input, but for now, these tips are going to make reading and writing into geodatabases a lot easier.
We'll also explore different options for speeding up our processes, and even using parallel processing in SQL for ArcGIS Pro.
We are going to now start writing more queries related to containment, adjacency, and overlap. What you'll notice is that if you can write the query for contains, you can write the query for intersects, and you can write the query for touches. The queries will all look similar which makes things really easy. The key now is to search the help file to discover the differences among the different functions. So, this lecture will also spend a short time diving into the help manual.
In this lecture we are going to take a look at different ways we can perform spatial queries based on distances. If you are starting to think that these queries are all starting to look similar, you'd be right. And, that's a good thing because it means you can adapt and change your queries, but the general structure will continue to be familiar.
Life comes at you fast. In this lecture we are going to explore how SQL can be used when there's no time to waste. We will present an emergency situation where we have to quickly scramble to supply answers after major flooding.
John Wayne once said
life is tough, but it's tougher when you're stupid
I'd amend that and say
responding to emergencies with GIS is difficult, but it's more difficult when your GIS software is cumbersome to use
You'll see how SQL is built for this situation.
So what percentage of the black, white, and total population in Maryland are within 1, 3, and 5 miles of a COVID-19 vaccination center in Maryland? Can we quantify these results by county? Sounds fairly easy, right? But, like most real-world scenarios there are minor and major complications that make solving this problem quite difficult with a traditional GIS. But, with SQL we can navigate those complications quite easily. Here you'll see a perfect example of where you want to plug your SQL for ArcGIS Pro into your ArcGIS Pro solution.
Just released by Manifold Software Limited - SQL for ArcGIS Pro! This new add-in for ArcGIS Pro now allows you to perform full SQL processing on Esri geodatabases. That means for the first time selects, updates, inserts, joins, aggregate queries, spatial SQL, and other SQL functionality now apply to Esri geodatabases. And if that isn't enough, the SQL for ArcGIS Pro Add-In is fully parallel, meaning if you have the cores on your computer, SQL for ArcGIS Pro will use it - with no restrictions or additional costs to use the massive number of cores typically found on gaming PCs.
Like my other video training, SQL for ArcGIS Pro for Esri Users is a full video course, equivalent to two days of training. In this course you'll learn to use basic and advanced SQL to explore, analyze, edit, and update Esri geodatabases using the new SQL for ArcGIS Pro Add-In. You'll learn how to write SQL queries, integrate spatial concepts, and pull in data sources from other technologies within a common application that works directly with ArcGIS Pro.
If you are an Esri professional, you likely know how to perform GIS analysis within the Esri GUI, and may even be skilled with Model Builder and Python. But, if you haven't been exposed to SQL, you'll gain so much knowledge about the power that SQL offers to GIS professionals.
The course will cover:
an overview of SQL
traditional SQL queries
spatial SQL for vector geometry
advanced concepts in SQL
and numerous real life scenarios to demonstrate how SQL for ArcGIS can be used within your current Esri environment.
Important note: The SQL for ArcGIS Pro module is sold by Manifold Software Limited. It is a low-cost Windows-based application. But, it is not free. However, you can download the Manifold GIS Free Viewer and make use of almost all of the functionality in SQL for ArcGIS Pro. The only limitations of using the free viewer include having to import the geodatabase yourself into the Manifold GUI, no ability to save or print out your results, and you can't update Esri geodatabases. However, this is an excellent way to test out the SQL queries in SQL for ArcGIS Pro without having to pay anything.