Structured Query Language (SQL) is the cornerstone of all relational database operations. In this hands-on Advanced SQL course, you will learn how to exploit the full potential of the SELECT statement to write robust queries using the best query method for your application, test your queries, and avoid common errors and pitfalls. It also teaches alternative solutions to given problems, enabling you to choose the most efficient solution in each situation.
Advanced SQL Course Delivery Methods
Advanced SQL Course Information
In this Advanced SQL Course, you will learn how to:
- Maximize the potential of SQL to build powerful, complex, and robust SQL queries.
- Query multiple tables with inner joins, outer joins, and self joins.
- Construct recursive common table expressions.
- Summarize data using aggregation and grouping.
- Execute analytic functions to calculate ranks.
- Build simple and correlated subqueries.
- Thoroughly test SQL queries to avoid common errors.
- Select the most efficient solution to complex SQL problems.
Advanced SQL Course Prerequisites
This is an advanced course, and knowledge of the basics of SQL at the level of Learning Tree course 925, Introduction to SQL Course, or equivalent is assumed.
Advanced SQL Course Instructor-Led Outline
- Why SQL can be both easy and difficult
- Recommendations for thorough testing
Retrieving data with SELECT
- Handling NULLs properly
- Analyzing query plans
- Enhancing query performance
- Retrieving partial results with FETCH and OFFSET
- Selecting the best alternatives
- Avoiding errors and pitfalls
Implementing various types of joins
- Inner joins
- Cross joins
- Left, right, and full outer joins
- Equijoins vs. theta joins
- The performance implications of joins
- Adding filter conditions to outer joins
Writing self joins
- Joining a table to itself
- Chaining self joins
- Solving time-interval problems
Combining queries with set operators
- UNION ALL
Summarizing data with aggregate functions
- Managing NULLs
- identifying duplicates
- GROUP B
- Applying conditions with HAVING
- Calculating moving averages
- Building crosstab reports
Extending group queries
- Nesting grouped aggregates
- Joins and grouping
- Introducing subtotals with CUBE and ROLLUP
The OVER clause
- Specifying the ordering before applying the function
- Splitting the result set into logical partitions
- RANK and DENSE_RANK
- ROW_NUMBER with ordered sets
- Calculating percentiles
Extending the use of aggregates
- Partitioning in multiple levels
- Computing running totals
- Comparing row and aggregate values
- Top-N queries
- Defining sliding window boundaries
- Subqueries in conditions and column expressions
- Creating multilevel subqueries
- Avoiding problems when subqueries return NULLs
- Handling multirow subquery results
- Finding gaps in number series
- Accessing values from the outer query
- EXISTS vs. IN
- Identifying duplicates
- Avoiding accidental correlation
Common table expressions
- Reusable subqueries
- Recursive subqueries
- Traversing hierarchies
- Overcoming SQL limitations
- Reducing complexity and improving performance
Advanced SQL Course On-Demand Training Bundle
This product offers access to a library of Microsoft on-demand courses, including SQL, Windows, Exchange, and more. In addition, at any time during your annual access to this offering, you may attend one of our 1-day review sessions focused specifically on Writing Powerful SQL Queries for SQL Server.
Advanced SQL Course Premium Blended Training
This product offers access to a library of Microsoft on-demand courses, including SQL, Windows, Exchange, and more. At any time during your annual access to this offering, you may attend one of our 1-day review sessions focused specifically on Writing Powerful SQL Queries for SQL Server. In addition, enrolling in this bundle also grants you access to any of our multi-day instructor-led events of this course, Advanced SQL Course.
Once payment is received, you will receive details for your Unlimited Access Training Bundle via email. You may enroll in the event date of your choice at that time by logging into your My Learning Tree dashboard or contacting our customer service team for assistance.