Course Outline
Data Selection from Databases
- Understanding syntax rules
- Retrieving all columns
- Applying projection
- Performing arithmetic operations in SQL
- Using column aliases
- Working with literals
- String concatenation
Filtering Result Sets
- Utilizing the WHERE clause
- Employing comparison operators
- Using the LIKE condition
- Applying the BETWEEN...AND condition
- Checking for NULL values with IS NULL
- Using the IN condition
- Combining conditions with AND, OR, and NOT
- Structuring multiple conditions within a WHERE clause
- Understanding operator precedence
- Removing duplicates with the DISTINCT clause
Sorting Result Sets
- Implementing the ORDER BY clause
- Sorting by multiple columns or custom expressions
SQL Functions
- Distinguishing between single-row and multi-row functions
- Using character, numeric, and DateTime functions
- Handling explicit and implicit data conversion
- Applying conversion functions
- Nesting functions
- Utilizing the Dual table (specifics for Oracle vs. other databases)
- Retrieving the current date and time using various functions
Aggregating Data with Aggregate Functions
- Overview of aggregate functions
- Handling NULL values in aggregate functions
- Using the GROUP BY clause
- Grouping data by different columns
- Filtering aggregated results with the HAVING clause
- Multidimensional grouping using ROLLUP and CUBE
- Identifying summary rows with the GROUPING function
- Using the GROUPING SETS operator
Retrieving Data from Multiple Tables
- Exploring different types of joins
- Using NATURAL JOIN
- Defining table aliases
- Oracle syntax: specifying join conditions in the WHERE clause
- SQL99 syntax: executing INNER JOINs
- SQL99 syntax: performing LEFT, RIGHT, and FULL OUTER JOINs
- Understanding Cartesian products in Oracle and SQL99 syntax
Subqueries
- Identifying where and when to use subqueries
- Differentiating single-row and multi-row subqueries
- Using single-row subquery operators
- Incorporating aggregate functions within subqueries
- Applying multi-row subquery operators such as IN, ALL, and ANY
Set Operators
- Combining results with UNION
- Preserving duplicates with UNION ALL
- Finding common rows with INTERSECT
- Identifying differences with MINUS or EXCEPT
Transactions
- Managing commits, rollbacks, and savepoints
Other Schema Objects
- Creating and using sequences
- Defining synonyms
- Building views
Hierarchical Queries and Samples
- Constructing trees using CONNECT BY PRIOR and START WITH clauses
- Utilizing the SYS_CONNECT_BY_PATH function
Conditional Expressions
- Implementing CASE expressions
- Using DECODE expressions
Data Management Across Time Zones
- Understanding time zones
- Working with TIMESTAMP data types
- Distinguishing between DATE and TIMESTAMP
- Performing conversion operations
Analytic Functions
- Application of analytic functions
- Defining partitions
- Setting up windows
- Using rank functions
- Applying reporting functions
- Leveraging LAG and LEAD functions
- Using FIRST and LAST functions
- Applying reverse percentile functions
- Using hypothetical rank functions
- Employing WIDTH_BUCKET functions
- Utilizing statistical functions
Requirements
No prior specific technical requirements are necessary to participate in this course.
Testimonials (7)
I liked the pace of the training and the level of interaction. All participants were encouraged to actively partake in discussions around exercise solutions, etc.
Aaron - Computerbits
Course - SQL Advanced level for Analysts
The trainer's efforts to make sure the less knowledgeable participants weren't being left behind.
Cian - Computerbits
Course - SQL Advanced level for Analysts
I greatly appreciated the interactive nature of the class, where the trainer actively engaged with attendees to ensure they were comprehending the material. Additionally, the trainer's excellent understanding of various database manipulation tools significantly enriched his presentations, providing a comprehensive overview of the tools' capabilities.
Kehinde - Computerbits
Course - SQL Advanced level for Analysts
Lukasz's teaching approach is far superior to traditional methods. His engaging and innovative style made the training sessions incredibly effective and enjoyable. I highly recommend Lukasz and NobleProg to anyone seeking top-notch training. The experience was truly transformative, and I feel much more confident in applying what I've learned
Adnan Chaudhary - Computerbits
Course - SQL Advanced level for Analysts
The training was incredibly interactive, making it both engaging and enjoyable. The activities and discussions effectively reinforced the material. Every necessary topic was covered thoroughly, with a well-structured and easy-to-follow format that ensured we gained a solid understanding of the subject. The inclusion of real-world examples and case studies was particularly beneficial, helping us see how the concepts could be applied in practical scenarios. Łukasz fostered a supportive and inclusive atmosphere where everyone felt comfortable asking questions and participating, which greatly enhanced the overall learning experience. His expertise and ability to explain complex topics in a simple manner were impressive, and his guidance was invaluable in helping us grasp difficult concepts. Łukasz's enthusiasm and positive energy were contagious, making the sessions lively and motivating us to stay engaged and participate actively. Overall, the training was a fantastic experience, and I feel much more confident in my abilities thanks to the excellent instruction provided.
Karol Jankowski - Computerbits
Course - SQL Advanced level for Analysts
Extremely happy with Luke as a trainer. He is very engaging and explains each topic in a way that i could understand. He was also very willing to answer questions. I would highly recommend him as a trainer going forward. I ask a LOT of questions, and Luke was always more than happy to take the time to answer them.
Paul - Computerbits
Course - SQL Advanced level for Analysts
How he explains things