# SQL Bootcamp

Canonical URL: <https://programwithus.com/classes/sql-bootcamp-nyc>

## Overview

### Why SQL?

Upwards of 90% of time on data wrangling is spent cleaning and manipulating data. With SQL you can easily address these challenges with English-like queries to a database. The gap between the supply and demand of people skilled in SQL is huge. As nearly every industry is moving toward being more data-driven, having this skill will give you a larger role in decision-making wherever you work.

### What You'll Learn

You’ll be introduced to foundational concepts like tables, data types, and queries. Once you understand the basics of viewing tables, you’ll be introduced to more advanced querying techniques like filtering and aggregating. You won't just learn the syntax, but also the crucial skill of translating plain English questions into SQL. You will be able to drill down into specific cases or step back and see larger patterns. You’ll also learn how to combine information from different tables using join statements and views. The final day of the course will cover advanced techniques like creating subqueries and using timestamp functions.

This course will use Postgres, an advanced open-source database management system. Concepts from this course will apply equally to other database systems such as MySQL and SQL Server, with the minor syntax differences noted during class.

## What you'll learn

- Explore and alter data using a graphical user interface
- Write queries to search through tables programmatically
- Understand different data types and converting between them
- Combine information across tables with join statements
- Advanced techniques like subqueries and timestamp functions

## Curriculum

### Foundations of SQL & Databases

#### SQL Fundamental Concepts

- What is SQL & why is it used?
- Flavors of SQL: Postgres vs SQL Server, etc.
- Database Tables, Rows, & Columns
- Using ER (Entity Relationship) Diagrams to visual what’s in a database

#### Exploring Databases & Writing SQL Statements (using the free DBeaver app)

- Connecting to a Database
- Database Navigator
- SQL Query Editor
- Using Code Hints
- Viewing the Results of your SQL query
- Setting Preferences

### Writing SQL Queries

#### Writing SELECT Statements

- Syntax of a SELECT statement
- Selecting all columns or specific columns from a table
- Limiting the number of results using LIMIT
- Ordering the results using ORDER BY
- Returning only DISTINCT records (eliminating duplicates)

#### Filtering Results

- Data Types (Strings vs Numbers)
- Comparison Operators: equal to, greater or less than, not equal to, etc.
- Filtering results using WHERE, AND, OR, IN, and NOT
- Pattern Matching: Wildcard Filters
- Case Sensitivity

### Using Joins to Combine Data from Multiple Tables

#### Understanding Table Relationships

- What are Primary vs Primary Keys
- Database Relations: One-to-One, One-to-Many, & Many-to-Many

#### Inner Joins

- The difference between Inner & Outer Joins
- Inner Joins
- Column & Table Aliases

#### Outer Joins & Finding NULLs

- Left Join
- Right Join
- Full Join
- Find NULL values

### Manipulating, Aggregating, & Filtering Data

#### Using CAST to Change Data Types

- Why and how to use CAST to make a data type fit your query’s needs

#### Aggregate Functions

- Using Aggregate Functions to perform common statistical calculations
- Using SUM, COUNT, AVG, MAX & MIN

#### Working with Dates & Time

- Date Functions: Getting the desired part of a date/time (Year, Month, Day, etc.)
- Formatting dates, including the day of the week (Sunday, Monday, etc.)
- Calculating the difference between 2 dates

### Grouping Data & Filtering Grouped Data

#### Grouping Data with Aggregate Functions

- Using GROUP BY to organize results into categories
- Applying Aggregate Functions to groups

#### Filtering Grouped Data with HAVING

- Using HAVING to filter the results of a GROUP BY
- HAVING vs WHERE

### Advanced Query Techniques

#### Subqueries

- Subqueries: Queries within queries
- Single-Value vs Multi-Value vs Table-Value Subqueries

#### Aggregate Window Functions

- Using OVER and PARTITION BY to apply Aggregate Functions

#### Conditionals with CASE

- Adding If-Else Logic with CASE
- Simple CASE vs Searched CASE

#### String Functions

- Manipulating text using string functions
- Using SUBSTRING, SPLIT\_PART, UPPER, etc.

#### Self Join

- How a Self Join is different from other types of joins
- Using a Self Join

### Views & User-Defined Functions

#### Views

- What are Views?
- The Advantages & Disadvantages of using Views
- How to Use & Query a View

#### Materialized Views

- The difference between regular Views and Materialized Views

#### User-Defined Functions

- Using Scalar-Value (Single-Value) Functions
- Using Table-Value Functions

## Schedule
- Jun 28, 2026 – Jul 19, 2026 — NYC
- Jul 14, 2026 – Jul 30, 2026 — NYC
- Jul 20, 2026 – Jul 22, 2026 — NYC
- Sep 8, 2026 – Sep 10, 2026 — NYC
- Oct 26, 2026 – Oct 28, 2026 — NYC
- Oct 26, 2026 – Oct 28, 2026 — NYC
- Oct 27, 2026 – Nov 12, 2026 — NYC
- Nov 15, 2026 – Dec 6, 2026 — NYC
- Nov 23, 2026 – Nov 25, 2026 — NYC

## FAQ

### How is this class structured? 

This course is an 18-hour bootcamp that teaches the student the ins and outs of SQL. Students will learn to explore data using a GUI, write search queries, combine information, and much more.

### How many students are in a given class?

Out typical class ranges from 8-12 students, but we allow up to 20 students to register for our course.

### Why should I learn SQL? 

Data has become central to almost every job on the market and it is becoming an increasingly necessary skill to know how to handle and control data. As data grows larger, databases are now the only mode of storage that can handle the quantity. There is a gap across industries between the supply and demand of those who can manage databases. In order to work with a database, one must know SQL.

### What type of SQL is being used?

This class uses PostgreSQL but concepts from this course will apply equally to other databases such as MySQL and SQL Server, with the minor syntax differences noted during class.

### Is there mandatory work outside of the classroom? 

Students are not required to complete any work outside of class. However, we provide students with bonus materials if they would like extra practice.

### What tangible skills do students leave with after the class? 

Students will learn how to explore, alter data within a database as well as use join statements and perform various techniques such as subqueries and stored procedures. They learn how to translate business questions posed by their non-technical colleagues into SQL queries.

## Pricing

**Tuition:** $975

Payment options: GI Bill accepted.
