Course Objectives
This course is a common starting point in the Oracle database curriculum for administrators, developers and business users. The objective of this course is to provide an introduction to the SQL database language within the context of an Oracle database, based upon the latest features available. The primary objective of this course is to consider advanced subjects and techniques pertaining to the SQL database language, based upon the latest features available with the Oracle release. Even professionals experienced in other implementations of the industry-standard SQL language will benefit from the advanced and Oracle-specific features of SQL discussed in this course.
Target Audience
The target audience for this course is all Oracle professionals, both business and systems professionals. Among the specific groups for whom this course will be helpful are:
- Application designers and developers
- Database administrators
- Business users and non-technical senior end users
Course Prerequisites
No mandatory prerequisites exist for this course.
Special Notes
Instructor will project an electronic copy of Oracle 12c SQL Fundamentals student guide for lecture. All students will receive the 12c version of the student materials whether they are using Oracle 12c or 11g. The instructor will identify the small number of syntax examples that work in 12c only. Although the student guide is labeled 12c , it’s also updated to use the new SQL Developer user interface which students would now be using with either Oracle 11g or 12c databases. In addition, the 12c course material covers the topics For the new exam as the older 11g SQL exam is no longer being offered. Students will use the version of Oracle they've chosen for their hands-on labs.
Certification Examination
This course considers subjects applicable to certification as an Oracle Database Certified SQL Expert. The topics considered are included within "Exam 1Z0-047: Oracle Database: SQL Certified Expert". One must also complete the companion volume ORACLE DATABASE 11G: SQL FUNDAMENTALS II and the course ORACLE DATABASE 11G: NEW & ADVANCED FEATURES FOR DEVELOPERS to prepare for this certification.
Contents
RELATIONAL DATABASES & SQL
• ABOUT RELATIONAL DATABASES
• ELEMENTS OF SQL
CHOOSING A SQL & PL/SQL INTERFACE
• ABOUT DATABASE CONNECTIONS
• ABOUT BIND VARIABLES
• USING SQL DEVELOPER
• USING SQL*PLUS
• USING APPLICATION EXPRESS
BUILDING A SELECT STATEMENT
• ABOUT THE SELECT STATEMENT
• USING ALIAS NAMES
RESTRICTING DATA WITH THE WHERE CLAUSE
• ABOUT LOGICAL OPERATORS
• EQUALITY OPERATOR
• BOOLEAN OPERATORS
• NULL & BETWEEN OPERATORS
• IS [NOT] NULL Operator
• [NOT] BETWEEN Operator
• FINDING TEXT STRINGS
• [NOT] LIKE Operator
• REGEXP_LIKE()
• IN OPERATOR
SORTING DATA WITH THE ORDER BY CLAUSE
• ABOUT THE ORDER BY CLAUSE
• MULTIPLE COLUMN SORTS
• SPECIFYING THE SORT SEQUENCE
• ABOUT NULL VALUES WITHIN SORTS
• USING COLUMN ALIASES
PSEUDO COLUMNS & FUNCTIONS
• USING ROWID
• USING ROWNUM
• USING THE FUNCTIONS
• SYSDATE
• USER & UID
• USING THE DUAL TABLE
• SESSIONTIMEZONE FUNCTION
JOINING TABLES
• ABOUT JOINS
• INNER JOIN
• REFLEXIVE JOIN
• NON-KEY JOIN
• OUTER JOIN
USING THE SET OPERATORS
• ABOUT THE SET OPERATORS
• SET OPERATOR EXAMPLES
SUMMARY FUNCTIONS
• ABOUT SUMMARY FUNCTIONS
• SUMMARY FUNCTIONS WITH DISTINCT
USING SUB-QUERIES
• ABOUT SUB-QUERIES
• STANDARD SUB-QUERIES
• CORRELATED SUB-QUERIES
AGGREGATING DATA WITHIN GROUPS
• ABOUT SUMMARY GROUPS
• FINDING GROUPS WITHIN THE BASE TABLES
• SELECTING DATA FROM THE BASE TABLES
• SELECTING GROUPS FROM THE RESULT TABLE
BUILD SIMPLE SQL*PLUS REPORTS
• FORMAT COLUMN OUTPUT WITH COLUMN
• DEFINING REPORT BREAKS WITH BREAK
• PRODUCE SUBTOTALS WITH COMPUTE
USE DATA DEFINITION LANGUAGE TO CREATE & MANAGE TABLES
• CREATE TABLE STATEMENT
• NOT NULL
• DEFAULT
• ALTER TABLE STATEMENT
• DROP TABLE STATEMENT
• SUPPORTIVE STATEMENTS
• DESCRIBE
• RENAME
USE DATA MANIPULATION LANGUAGE TO MANIPULATE DATA
• ABOUT THE INSERT STATEMENT
• ABOUT THE DELETE STATEMENT
• ABOUT THE UPDATE STATEMENT
• ABOUT TRANSACTIONS
• ROLLBACK
• COMMIT
• SAVEPOINT
• SET TRANSACTION
• TRUNCATE TABLE
• COMPLEX TABLE REFERENCES
APPENDIX A
• REFERENCE INFORMATION
• SQL DDL STATEMENT REFERENCE
• SQL DML STATEMENT REFERENCE
• SQL TRANSACTION CONTROL STATEMENT REFERENCE
• SQL OPERATORS REFERENCE
SQL99 JOIN TECHNIQUES
• CROSS JOINS
• NATURAL JOINS
• INNER JOINS
• OUTER JOINS
• ANTI JOINS
• USING NAMED SUBQUERIES
ENHANCING GROUPS WITH ROLLUP & CUBE
• USING ROLLUP
• USING CUBE
USING THE CASE EXPRESSION
SQL FUNCTIONS: CHARACTER
• STRING FORMATTING FUNCTIONS
• ASCII CODES FUNCTIONS
• PAD & TRIM FUNCTIONS
• STRING MANIPULATION FUNCTIONS
• STRING COMPARISON FUNCTIONS
• PHONETIC SEARCH FUNCTIONS
SQL FUNCTIONS: NUMERIC
• ABOUT THE NUMERIC FUNCTIONS
• NULL VALUE FUNCTIONS
SQL FUNCTIONS: DATE
• DATE FORMAT FUNCTIONS
• DATE ARITHMETIC FUNCTIONS
DATABASE OBJECTS: RELATIONAL VIEWS
• ABOUT DATABASE OBJECTS
• ABOUT RELATIONAL VIEWS
• UPDATING VIEW DATA
• MAINTAINING VIEW DEFINITIONS
• ALTER VIEW
• DROP VIEW
DATABASE OBJECTS: DATA DICTIONARY STORAGE
• ABOUT THE DATA DICTIONARY
• OBJECT-SPECIFIC DICTIONARY VIEWS
• USER_UPDATABLE_COLUMNS
• UNDERSTANDING THE DATA DICTIONARY STRUCTURE
DATABASE OBJECTS: INDEXES
• ABOUT INDEXES
• USE B-TREE INDEXES
DATABASE OBJECTS: OTHER OBJECTS
• MORE ABOUT CREATING TABLES
• ABOUT SEQUENCES
• ALTER SEQUENCE & DROP SEQUENCE
• ALTER SEQUENCE
• DROP SEQUENCE
• ABOUT SYNONYMS
• DROP SYNONYM
• CREATE SCHEMA AUTHORIZATION
DATABASE OBJECTS: SECURITY
• USER PASSWORDS
• OBJECT SECURITY
DATA INTEGRITY USING CONSTRAINTS
• ABOUT CONSTRAINTS
• NOT NULL CONSTRAINT
• CHECK CONSTRAINT
• UNIQUE CONSTRAINT
• PRIMARY KEY CONSTRAINT
• REFERENCES CONSTRAINT
• DEFINING CONSTRAINTS ON EXISTING TABLES
MANAGING CONSTRAINT DEFINITIONS
• RENAMING & DROPPING CONSTRAINTS
• ENABLING & DISABLING CONSTRAINTS
• DEFERRED ENFORCEMENT
• SET CONSTRAINTS
• HANDLING CONSTRAINT EXCEPTIONS
• CONSTRAINTS WITH VIEWS
• DATA DICTIONARY STORAGE
ADVANCED SQL*PLUS REPORTS
• BREAK
• COMPUTE
• COLUMN
• TTITLE & BTITLE
OPTIONAL – ADVANCED SQL*PLUS REPORTS
• REPORT-1
• REPORT-2
• SOLUTIONS
• REPORT-1
• REPORT-2
OPTIONAL – BUILDING SQL*PLUS SCRIPTS
• USING SQL*PLUS VARIABLES
• DEFINE & UNDEFINE
• ACCEPT
• PROMPT
• PAUSE
OPTIONAL – SQL*PLUS SESSION CONTROL
• CONTROLLING SYSTEM VARIABLES
• SET
• SHOW