Course Outline
Data Retrieval Fundamentals
- Understanding SQL syntax
- Selecting all columns
- Concept of projection
- Performing arithmetic operations
- Assigning column aliases
- Handling literals
- String concatenation
Data Filtering Techniques
- Using the WHERE clause
- Applying comparison operators
- Pattern matching with LIKE
- Range filtering with BETWEEN...AND
- Checking for NULL values
- Set-based filtering with IN
- Logical operators: AND, OR, NOT
- Combining multiple conditions
- Operator precedence
- Removing duplicates with DISTINCT
Result Set Sorting
- Implementing the ORDER BY clause
- Sorting by multiple columns or expressions
SQL Built-in Functions
- Distinguishing between single-row and multi-row functions
- Utilizing Character, Numeric, and DateTime functions
- Explicit vs. implicit data conversion
- Using conversion functions
- Nesting functions
- The Dual table (Oracle-specific vs. other databases)
- Retrieving current date and time
Data Aggregation
- Core aggregate functions
- Handling NULL values in aggregation
- Using the GROUP BY clause
- Grouping by multiple columns
- Filtering groups with the HAVING clause
- Multidimensional grouping via ROLLUP and CUBE
- Identifying summaries using GROUPING
- Advanced grouping with GROUPING SETS
Multi-Table Data Retrieval
- Types of joins
- NATURAL JOIN
- Defining table aliases
- Oracle syntax: joins via WHERE clause
- SQL99 syntax: INNER JOIN
- SQL99 syntax: LEFT, RIGHT, and FULL OUTER JOINS
- Cartesian products in Oracle and SQL99
Subqueries
- Placement and usage scenarios
- Single-row vs. multi-row subqueries
- Operators for single-row subqueries
- Using aggregate functions in subqueries
- Operators for multi-row subqueries: IN, ALL, ANY
Set Operations
- UNION
- UNION ALL
- INTERSECT
- MINUS/EXCEPT
Transaction Management
- COMMIT, ROLLBACK, and SAVEPOINT commands
Additional Schema Objects
- Sequences
- Synonyms
- Views
Hierarchical Queries
- Constructing trees using CONNECT BY PRIOR and START WITH
- Using the SYS_CONNECT_BY_PATH function
Conditional Logic
- CASE expressions
- DECODE expressions
Time Zone Data Management
- Time zone concepts
- TIMESTAMP data types
- Distinguishing between DATE and TIMESTAMP
- Conversion processes
Advanced Analytic Functions
- Application contexts
- Partitioning
- Windowing
- Ranking functions
- Reporting functions
- LAG/LEAD functions
- FIRST/LAST functions
- Reverse percentile functions
- Hypothetical rank functions
- WIDTH_BUCKET functions
- Statistical functions
Requirements
No prior specific experience is required to join 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