Full star Half star Star PDF
The Ultimate Training Experience.

Advanced SQL Queries Course

(4.88 out of 5) 433 Student Reviews

Microsoft Partner - Dynamic Web Training

About the Course

During this 2-day Advanced SQL course, you will learn more advanced aspects of the SQL language and a better understanding of how SQL databases work. You will learn about good database design, improve your ability to retrieve, manipulate, and analyse data using SQL, learn about creating more efficient queries, and how to combine multiple queries.

The course will focus on Microsoft SQL Server. However, the skills you learn in this Advanced SQL Queries course are not limited to just Microsoft SQL, it is also suitable for learning more about PostgreSQL, MySQL & MariaDB, and Oracle among others.

Who should do this course?

This course is suitable for anyone seeking to extend their knowledge of the SQL Language, as well as a better understanding of how SQL databases work.

Prerequisites

This course assumes a basic understanding of SQL before attending tis course. Participants should have completed our SQL Essentials course or have equivalent skills.

Course Details

$990 incl GST

  • Duration:2 Days
  • Max. Class Size:10
  • Avg. Class Size:5
  • Study Mode:
    Classroom Online Live
  • Level:Advanced
  • CPD Hours:12 hours
  • Course Times: Classroom: 9.00am to 5.00pm approx(Local Time) Online Live: 9.00am to 5.00pm approx(AEST or AEDT)
  • Download Course PDF
Pay Later

Course Dates

Sydney Class Dates

Level 11, 32 Walker Street, North Sydney , NSW 2060

17-18 Nov 25 Mon - Tue Online Live
20-21 Nov 25 Thu - Fri Classroom
08-09 Dec 25 Mon - Tue Online Live
16-17 Dec 25 Tue - Wed Classroom
15-16 Jan 26 Thu - Fri Classroom
22-23 Jan 26 Thu - Fri Online Live
09-10 Feb 26 Mon - Tue Classroom
16-17 Feb 26 Mon - Tue Online Live
12-13 Mar 26 Thu - Fri Classroom
16-17 Mar 26 Mon - Tue Online Live
26-27 Mar 26 Thu - Fri Online Live
16-17 Apr 26 Thu - Fri Classroom
11-12 May 26 Mon - Tue Classroom
16-17 Jun 26 Tue - Wed Classroom
Melbourne Class Dates

Level 12, 379 Collins Street, Melbourne , VIC 3000

17-18 Nov 25 Mon - Tue Online Live
24-25 Nov 25 Mon - Tue Classroom
08-09 Dec 25 Mon - Tue Online Live
15-16 Jan 26 Thu - Fri Classroom
22-23 Jan 26 Thu - Fri Online Live
09-10 Feb 26 Mon - Tue Classroom
16-17 Feb 26 Mon - Tue Online Live
16-17 Mar 26 Mon - Tue Classroom
16-17 Mar 26 Mon - Tue Online Live
26-27 Mar 26 Thu - Fri Online Live
16-17 Apr 26 Thu - Fri Classroom
18-19 May 26 Mon - Tue Classroom
25-26 Jun 26 Thu - Fri Classroom
Brisbane Class Dates

All courses facilitated in, Online Live format , QLD

17-18 Nov 25 Mon - Tue Online Live
08-09 Dec 25 Mon - Tue Online Live
22-23 Jan 26 Thu - Fri Online Live
16-17 Feb 26 Mon - Tue Online Live
16-17 Mar 26 Mon - Tue Online Live
26-27 Mar 26 Thu - Fri Online Live
Canberra Class Dates

All courses facilitated in, Online Live format , ACT

17-18 Nov 25 Mon - Tue Online Live
08-09 Dec 25 Mon - Tue Online Live
22-23 Jan 26 Thu - Fri Online Live
16-17 Feb 26 Mon - Tue Online Live
16-17 Mar 26 Mon - Tue Online Live
26-27 Mar 26 Thu - Fri Online Live
Adelaide Class Dates

All courses facilitated in, Online Live format , SA

17-18 Nov 25 Mon - Tue Online Live
08-09 Dec 25 Mon - Tue Online Live
22-23 Jan 26 Thu - Fri Online Live
16-17 Feb 26 Mon - Tue Online Live
16-17 Mar 26 Mon - Tue Online Live
26-27 Mar 26 Thu - Fri Online Live
Perth Class Dates

All courses facilitated in, Online Live format , WA

17-18 Nov 25 Mon - Tue Online Live
08-09 Dec 25 Mon - Tue Online Live
22-23 Jan 26 Thu - Fri Online Live
16-17 Feb 26 Mon - Tue Online Live
16-17 Mar 26 Mon - Tue Online Live
26-27 Mar 26 Thu - Fri Online Live

Course Units

Unit 1: Setting up SQL

  • Setting up the Editor
  • Setting up Databases
  • Testing, Type Qualifications & Arguments
  • IF an object EXISTS
  • ‘type’ qualifications
  • ‘type’ arguments of the functions
  • Building the SQL Database
  • Creating the Database
  • Creating the Tables
  • Inserting the Data
  • SQL Schema
  • The Database Schema
  • Import Table Wizard
  • RESTORE the Databases

Unit 2: Data Definition Language (DDL)

  • Commonly used DDL statements
  • Using CREATE TABLE
  • Understanding Temporary Tables
  • CREATE Local Temporary Tables
  • CREATE Global Temporary Tables
  • Differences Between DELETE & TRUNCATE TABLE
  • Using DELETE
  • Using TRUNCATE TABLE
  • Creating a VIEW

Unit 3: Stored Procedures & Functions

  • Understanding Functions and Stored Procedures
  • Understanding a User Defined Function (udf)
  • Creating a Scalar-Valued Function
  • The Random Number Generator
  • Using the Random Number Generator
  • Using INSERT INTO
  • Using UPDATE
  • Creating a VIEW
  • What is a User Stored Procedure (usp)
  • Procedures to Invoke CALL Functions
  • Creating a User Stored Procedure (usp)
  • Stored Procedure with Default Parameters
  • Generating Stored Procedures to Rebuild the Orders Table
  • Wrapping Stored Procedures
  • Manipulating Strings With Scalar Functions
  • Creating an Inline ‘Table-Valued’ Function
  • Using a Multi-Statement Table-Valued Function

Unit 4: Local & Global variables

  • What are variables?
  • Understanding Data Variables
  • Understanding @variable datatypes
  • Strings
  • Numeric
  • Date/Time
  • Understanding Global variables
  • Examples of SQL Global Variables
  • Using the TRANCOUNT global variable
  • Using the ROWCOUNT global variable
  • Using the VERSION global variable
  • Understanding the ERROR global variable

Unit 5: Debugging SQL Code

  • Useful debugging keyboard shortcuts
  • How to Debug a Procedure (usp)
  • How to Debug a Function (udf)
  • Commencing the debugging process
  • Viewing the Locals window
  • Inserting a Breakpoint

Unit 6: Common Conversion Functions

  • Defined datatypes ranked in order of precedence
  • Working with CAST() with Dates
  • Working with CAST() to Concatenate
  • Working with CONVERT()
  • Working with TRY_CAST and TRY_CATCH
  • Working with COALESCE
  • Working with DATENAME()

Unit 7: Logic Functions

  • Analysing IIF versus CASE statements
  • Working with an IIF Function
  • Working with CASE

Unit 8: Row Functions & Operators

  • Using OVER
  • Using OVER PARTITION BY
  • Using multiple columns in the PARTITION BY
  • Using ROLLUP
  • Using ORDER BY ROW
  • Using ORDER BY RANGE

Unit 9: Ranking Functions

  • Defining Common Ranking Functions
  • Understanding ROW_NUMBER
  • Understanding RANK
  • Understanding DENSE_RANK
  • Understanding NTILE
  • Using ROW_NUMBER
  • Using RANK
  • Using DENSE_RANK
  • Using NTILE

Unit 10: Using Subqueries

  • Overview of Subqueries
  • Using a Subquery in WHERE
  • Using Subqueries in SELECT
  • Using CAST() in a Subquery
  • Building a Function with Subquery
  • Understanding Correlated Subqueries

Unit 11: Common Table Expressions (CTE)

  • Overview of Common Table Expressions (CTE)
  • Understanding Non-Recursive CTE’s
  • Using a Non-Recursive CTE
  • Using the CTE - ORDER BY
  • Declaring variables for the CTE definition
  • Using a CTE Without Parameters
  • Using a CTE With a Calculated Definition
  • Using a CTE with Multiple Query Expressions
  • Using a Recursive Common Table Expression (CTE)
  • Demonstrating a Simple Recursive CTE
  • Using a CTE for a Hierarchy

Unit 12: Triggers

  • Understanding Triggers
  • Creating Trigger Tables
  • Creating Table Triggers INSERT, UPDATE & DELETE
  • Maintaining the Employee and Audit Tables
  • Using Action Triggers
  • Rebuilding The Employees & Audit Tables

Unit 13: Transaction Processing

  • Understanding Transaction Processing
  • Integrating Transaction Statements
  • Working with BEGIN TRANSACTION
  • Working with COMMIT & ROLLBACK
  • Using the ERROR Global Variable
  • Creating the Table & User Stored Procedure for Transaction
  • Using the TRANCOUNT Global Variable

Unit 14: Cursors

  • Methods of Iteration
  • Using WHILE loops
  • What is a CURSOR
  • Using a CURSOR with FETCH
  • Using a Cursor to iterate over a table
  • Using a Cursor to iterate over all databases

Unit 15: Workshop Exercises

  • Creating a Workplace Table
  • Creating Stored Procedures
  • Creating an Inventory Orders Table
  • Creating a Failed Order Log Table
  • Creating a Stored Procedure to Log a Failed Order
  • Creating a Stored Procedure for a New Order
  • Creating Stored Procedures to Test New Orders
  • Building a udf_Spend_Boundary
  • Working with CAST() to convert Numeric
  • Working with CAST() to ROUND Numeric
  • COALESCE_NULL_Names
  • Using SCROLL with a CURSOR
  • Using PIVOT Tables
  • Referring to Other Databases

Training Packages

SQL Training Package

$ 1760 incl GST
(You save $220)
Total Duration
4 days
Pay Later

Related Courses

Excel for Data Analysis Course
Excel for Data Analysis
(4.84 out of 5)
$396.00
Learn More
Power BI Essentials Course
Power BI Essentials
(4.85 out of 5)
$396.00
Learn More
SQL Essentials Course
SQL Essentials
(4.83 out of 5)
$990.00
Learn More
SQL for Data Analysis Course
SQL for Data Analysis
(4.70 out of 5)
$1584.00
Learn More

Student Reviews

(5.0)
25 September, 2025

This SQL course was very beneficial for me personally in new techniques needed in my job especially for reporting and stored procedures. The instructor was very knowledgable and engaging. Excellent course.

David M
(5.0)
25 September, 2025

Matthew G. is very professional, he is very knowledgeable about the course and i love the way that he has different ways to explain it if you don't get it in the first time.

Alen M
(5.0)
15 September, 2025

Matthew again was very comprehensive and well organized. He personalised the examples and made sure we understood each section. A real credit to the industry

Mitch P
(5.0)
15 September, 2025

The course was well instructed; Matthew was thorough and well-spoken as he demonstrated and broke down methods and techniques.

Ronan V
(5.0)
28 July, 2025

Mathew is great instructor. He made complicated concepts in advanced SQL interesting. There are only two of us in the class so all questions are being answered clearly and in details. He also shared valuable real world experience and tips.

Anonymous
(5.0)
10 June, 2025

good course. Great tutor! Since Mark has a high school teaching background explains complex things in layman terms which is amazing! thanks :)

Harshini G
(5.0)
26 May, 2025

I have participated in previous SQL courses, and this one is by far the best. From the trainer to the content everything was well informed and insightful. I have learnt so much from this course and feel my confidence with using SQL has increased ten folds.

Coralee R
(4.2)
26 May, 2025

I loved it. There is a lot of information to process. I would have loved to be able to do exercises on our own

Caterine L
(4.8)
15 May, 2025

Mark is an excellent instructor and teacher and I'd definitely do another course with him. He's one of the better instructors I've ever come across. I also enjoyed his sense of humour.

Jean B
(4.8)
15 May, 2025

Mark was a very enjoyable, knowledgeable, and helpful instructor. The mix of theory, working examples, and real-world examples was very appreciated and I feel confident in absorbing most if not all of the material. I would definitely recommend this course.

Josh
(4.5)
31 March, 2025

Overall, the training was very informative and well-structured. Mark explained concepts clearly. It was a valuable learning experience, and I feel more confident using SQL. Thank you for a great session!

Steph W
(4.5)
31 March, 2025

Course was good. Support was provided. Lecturer was knowledgeable. Will recommend course to other colleagues.

Micah L
(5.0)
10 March, 2025

This is my second time attending a workshop training with Matthew and I am as pleased with his teaching style and ability to break down complex ideas into something more palletable/easier to understand. Furthermore, he likes to sprinkle humour and also life experiences/teachings throughout the lessons makes it more engaging and breaks up the mundane teaching if needed. Thank you so much Matthew for teaching me! I really enjoyed it :)

Rainbo T
(5.0)
06 March, 2025

I've completed the SQL Essentials course IN PERSON but wanted to do the SQL Advanced course ONLINE to try a different trainer. It was the best decision I've made, and Mark was fantastic. He answered my questions WITH examples and always stayed on topic. Mark also was great at pacing the course. I've had such a great experience that I will be looking at doing a "re-sit" of the Essentials course online with Mark.

Mary N
(4.8)
03 February, 2025

Mark was amazing, he went very indepth in everything and made sure to answer all our questions, I am very pleased.

pierce l
Read all course reviews

Enquire Now

Fill in your details to have a training consultant contact you to discuss your training needs.

Note: Form fields marked with * are required.

Your details
Please enter a valid email address for shipping updates.
I am enquiring about a...
SQL Training Package

Book both SQL Essentials and Advanced SQL Queries course together and
SAVE $220


For more info please

Call 1300 888 724

View Package Details

REQUEST A CALLBACK
A team member will call you at a time convenient to you.
Your message was sent, thank you!
Contact us

Level 11, 32 Walker Street, North Sydney NSW, 2060