SQL, or Structured Query Language, serves as the backbone of modern data management and manipulation. Understanding its principles allows technical professionals to create, maintain, and interrogate databases, giving them the power to make data-driven decisions that can shape the success of their organizations. From e-commerce platforms to complex inventory systems, SQL is the key to managing big data and transforming it into actionable insights.
Geared for experienced technical professionals, Introduction to SQL Programming is a three-day, hands-on course that will provide you with a solid understanding of SQL programming, providing you with the tools, techniques, and insights required to excel in database management and analysis.
Throughout the course, you'll learn how to handle data challenges with creativity and precision, learning how to extract, analyze, and interpret large datasets. This includes developing abilities to craft, interpret, and optimize SQL queries, analyze data, and implement effective database solutions, leading to informed, data-driven decision-making. You'll explore relational design principles, entity relationship diagrams, and the creation of efficient data models to represent complex relationships within data. The course also covers how to construct, interpret, and optimize SQL queries, including the use of functions, joins, subqueries, and advanced analytical techniques.
Through extensive lab work, you'll gain the foundational knowledge and practical skills required to tackle various data challenges with confidence and creativity. You'll exit the course equipped with the SQL knowledge and skills needed to craft, interpret, and optimize SQL queries, analyze data, and implement effective database solutions, leading to informed, data-driven decision-making within your organization.
Working in a hands-on learning environment, led by our expert instructor, you'll explore:
Audience
Basic RDBMS Principles
Relational design principles
Accessing data through a structured query language
Entity relationship diagrams
Data Domains
Null values
Indexes
Views
Denormalization
Data Model Review
The SQL Language and Tools
Using SQL*Plus
Why Use SQL*Plus When Other Tools Are Available?
Starting SQL*Plus
EZConnect
SQL Commands
PL/SQL Commands
SQL*Plus Commands
The COLUMN Command
The HEADING Clause
The FORMAT Clause
The NOPRINT Clause
The NULL Clause
The CLEAR Clause
Predefined define variables
LOGIN.SQL
Command history
Copy and paste in SQL*Plus
Entering SQL commands
Entering PL/SQL commands
Entering SQL*Plus commands
Default output from SQL*Plus
Entering Queries
What about PL/SQL?
Using SQL Developer
Choosing a SQL Developer version
Configuring connections
Creating A Basic Connection
Creating A TNS Connection
Connecting
Configuring preferences
Using SQL Developer
The Columns Tab
The Data Tab
The Constraints Tab
The Grants Tab
The Statistics Tab
Other Tabs
Queries In SQL Developer
Query Builder
Accessing Objects Owned By Other Users
The Actions Pulldown Menu
Differences between SQL Developer and SQL*Plus
Reporting Commands Missing In SQL Developer
General Commands Missing In SQL Developer
Data Dictionary report
User Defined reports
Using scripts in SQL Developer
SQL Query Basics
Understanding the data dictionary
Exporting Key Data Dictionary Information
The Dictionary View
Components of a SELECT Statement
The SELECT Clause
The FROM Clause
The WHERE Clause
The GROUP BY Clause
The HAVING Clause
The ORDER BY Clause
The START WITH And CONNECT BY Clauses
The FOR UPDATE Clause
Set Operators
Column Aliases
Fully Qualifying Tables and Columns
Table Aliases
Using DISTINCT and ALL in SELECT statements
WHERE and ORDER BY
WHERE clause basics
Comparison operators
Literals and Constants in SQL
Simple pattern matching
Logical operations
The DUAL table
Arithmetic operations
Expressions in SQL
Character operators
Pseudo columns
Order by clause basics
Ordering Nulls
Accent and case sensitive sorts
Sampling data
WHERE and ORDER BY in SQL Developer
All, Any, Some
Functions
The basics of functions
Number functions
Character functions
Date functions
Conversion functions
Other functions
Large object functions
Error functions
The RR format mode;
Leveraging your knowledge
ANSI 92 JOINS
Basics of ANSI 92 Joins
Using Query Builder with multiple tables
Table Aliases
Outer joins
Outer Joins In Query Builder
Set operators
Self-referential joins
Non-Equijoins
ANSI 99 Joins
Changes with ANSI99
CROSS Join
NATURAL Join
JOIN USING
JOIN ON
LEFT / RIGHT OUTER JOIN
FULL OUTER JOIN
GROUP BY and HAVING
Introduction to GROUP functions Limiting Rows
Including NULL
Using DISTINCT With Group Functions
GROUP function requirements
The HAVING clause
Other GROUP function rules
Using Query Builder with GROUP clauses
ROLLUP and CUBE
The Grouping function
Grouping Sets
Subqueries
Why use subqueries?
WHERE clause subqueries
FROM clause subqueries
HAVING clause subqueries
CORRELATED subqueries
SCALAR subqueries
DML and subqueries
EXISTS subqueries
Hierarchical queries
TOP N AND BOTTOM N queries
Creating subqueries using Query Builder
Regular Expressions
Available Regular Expressions
Regular Expression Operators
Character Classes
Pattern matching options
REGEX_LIKE
REGEXP_SUBSTR
REGEXP_INSTR
REGEXP_REPLACE
REGEXP_COUNT
Analytics
The WITH clause
Reporting aggregate functions
Analytical functions
User-Defined bucket histograms
The MODEL clause
PIVOT and UNPIVOT
Temporal validity
More Analytics
RANKING functions
RANK
DENSE_RANK
CUME_DIST
PERCENT_RANK
ROW_NUMBER
Windowing aggregate functions
RATIO_TO_REPORT
LAG / LEAD
Linear Regression functions
Inverse Percentile functions
Hypothetical ranking functions
Pattern Matching