icon icon

SQL intermediate

icon

Training process

Training needs analysis

If you have specific requirements regarding the training programme, we will carry out a training needs analysis for you. This will guide us on which aspects of the programme should receive greater emphasis, so that the training programme meets your specific needs.

What will you gain?

icon

Confident data changes - You will learn how to insert, update, and delete data safely with conditions and subqueries, so you can prepare reliable data operations for real database tables much faster.

icon

Stronger reporting skills - You will master GROUP BY, aggregate functions, and HAVING, allowing you to build useful reports on sales, activity, or costs without moving data into spreadsheets.

icon

Flexible subquery usage - You will understand when to use subqueries in WHERE and FROM, and how to apply IN and EXISTS to create clearer SQL that solves more demanding business cases.

icon

Faster query performance - You will work with indexes, execution plans, and optimization basics, making it easier to spot bottlenecks and improve query speed on larger datasets in daily work.

icon

Practical view design - You will create views based on joins and subqueries, understand when updates through views are possible, and see where materialized views bring real value.

icon

Advanced data analysis - You will use window functions, ranking methods, and analytic functions to compare rows, number results, and analyze trends, giving you more precise reporting options.

icon

SQL logic automation - You will learn the basics of stored procedures and user-defined functions, so you can move repeatable logic into the database and manage operational SQL code more cleanly.

icon

Safer database work - You will understand transactions, concurrency, error handling, and permission basics, helping you reduce data risks and build SQL solutions that are safer in production.

Training programme

1. Advanced operations on data

  • inserting data,
  • updating data with subqueries,
  • deleting data with conditions.

2. Advanced SELECT statements

  • grouping data (GROUP BY),
  • aggregating data (COUNT, SUM, AVG, MIN, MAX),
  • the HAVING clause for filtering groups.

3. Subqueries

  • subqueries in the WHERE clause,
  • subqueries in the FROM clause,
  • the IN and EXISTS operators in subqueries.

4. Data management

  • creating and managing indexes (CREATE INDEX, DROP INDEX),
  • analysis of query execution plans (EXPLAIN PLAN),
  • optimization of queries with a large amount of data.

5. Views

  • creating complex views (JOIN, subqueries),
  • updating data through views,
  • materialized views.

6. Data types and their conversion

  • advanced data types,
  • data type conversion,
  • text data management.

7. Advanced functions and operators

  • window functions (ROW_NUMBER, RANK, DENSE_RANK, NTILE),
  • set operators (UNION, INTERSECT, EXCEPT),
  • analytic functions (LEAD, LAG, FIRST_VALUE, LAST_VALUE).

8. Stored procedures and user-defined functions

  • creating simple stored procedures,
  • debugging and managing stored procedures.

9. Transactions and error handling

  • creating and managing transactions,
  • locking and concurrency management,
  • error handling and exceptions.

10. Basics of security

  • permissions and user roles,
  • dynamic SQL,
  • working with views and securing sensitive data.

What are the prerequisites for participating in the training?

icon

SELECT basics - You should be comfortable writing simple SELECT queries, choosing columns, using aliases, and filtering results with WHERE so you can focus on more advanced SQL patterns.

icon

JOIN knowledge - You should understand how to combine tables with basic JOINs and read the results of such queries, because the course expands this area with more complex use cases.

icon

Data modification basics - You should know the basics of INSERT, UPDATE, and DELETE and understand how these commands affect table records, so advanced conditions and logic are easier to follow.

icon

Relational database basics - You should understand tables, rows, columns, and keys, and have some hands-on contact with a relational database so you can place new topics in a practical context.