Learn Oracle SQL , Best book for database testers how upgrade their knowledge in sql
        Why We Wrote This Book
        What's New in Oracle SQL?
        Objectives of This Book
        Audience for This Book
        Platform and Version
        Structure of This Book
        Conventions Used in This Book
        Using Code Examples
        Comments and Questions
       Chapter 1.  Introduction to SQL
        Section 1.1.  What Is SQL?
        Section 1.2.  A Brief History of SQL
        Section 1.3.  A Simple Database
        Section 1.4.  DML Statements
        Section 1.5.  So Why Are There 17 More Chapters?
       Chapter 2.  The WHERE Clause
        Section 2.1.  Life Without WHERE
        Section 2.2.  WHERE to the Rescue
        Section 2.3.  WHERE Clause Evaluation
        Section 2.4.  Conditions and Expressions
        Section 2.5.  WHERE to Go from Here
       Chapter 3.  Joins
        Section 3.1.  What Is a Join Query?
        Section 3.2.  Join Conditions
        Section 3.3.  Types of Joins
        Section 3.4.  Joins and Subqueries
        Section 3.5.  DML Statements on a Join View
       Chapter 4.  Group Operations
        Section 4.1.  Aggregate Functions
        Section 4.2.  The GROUP BY Clause
        Section 4.3.  The HAVING Clause
        Section 4.4.  Nested Group Operations
       Chapter 5.  Subqueries
        Section 5.1.  What Is a Subquery?
        Section 5.2.  Noncorrelated Subqueries
        Section 5.3.  Correlated Subqueries
        Section 5.4.  Inline Views
        Section 5.5.  Subquery Case Study: The Top N Performers
       Chapter 6.  Handling Temporal Data
        Section 6.1.  Time Zones
        Section 6.2.  Temporal Data Types in Oracle
        Section 6.3.  Literals of Temporal Types
        Section 6.4.  Getting Temporal Data In and Out of a Database
        Section 6.5.  Date and Time Formats
        Section 6.6.  Manipulating Temporal Data
       Chapter 7.  Set Operations
        Section 7.1.  Set Operators
        Section 7.2.  Precedence of Set Operators
        Section 7.3.  Comparing Two Tables
        Section 7.4.  Using NULLs in Compound Queries
        Section 7.5.  Rules and Restrictions on Set Operations
       Chapter 8.  Hierarchical Queries
        Section 8.1.  Representing Hierarchical Information
        Section 8.2.  Simple Hierarchy Operations
        Section 8.3.  Oracle SQL Extensions
        Section 8.4.  Complex Hierarchy Operations
        Section 8.5.  Restrictions on Hierarchical Queries
        Section 8.6.  Enhancements in Oracle Database 10g
       Chapter 9.  DECODE and CASE
        Section 9.1.  DECODE, NULLIF, NVL, and NVL2
        Section 9.2.  The Case for CASE
        Section 9.3.  DECODE and CASE Examples
       Chapter 10.  Partitioning
        Section 10.1.  Partitioning Concepts
        Section 10.2.  Partitioning Tables
        Section 10.3.  Partitioning Indexes
        Section 10.4.  Partitioning Methods
        Section 10.5.  Specifying Partitions
        Section 10.6.  Partition Pruning
       Chapter 11.  PL/SQL
        Section 11.1.  What Is PL/SQL?
        Section 11.2.  Procedures, Functions, and Packages
        Section 11.3.  Calling Stored Functions from Queries
        Section 11.4.  Restrictions on Calling PL/SQL from SQL
        Section 11.5.  Stored Functions in DML Statements
        Section 11.6.  The SQL Inside Your PL/SQL
       Chapter 12.  Objects and Collections
        Section 12.1.  Object Types
        Section 12.2.  Collection Types
        Section 12.3.  Collection Instantiation
        Section 12.4.  Querying Collections
        Section 12.5.  Collection Unnesting
        Section 12.6.  Collection Functions
        Section 12.7.  Comparing Collections
        Section 12.8.  Manipulating Collections
        Section 12.9.  Multilevel Collections
       Chapter 13.  Advanced Group Operations
        Section 13.1.  Multiple Summary Levels
        Section 13.2.  Pushing the GROUPING Envelope
        Section 13.3.  The GROUPING_ID and GROUP_ID Functions
       Chapter 14.  Advanced Analytic SQL
        Section 14.1.  Analytic SQL Overview
        Section 14.2.  Ranking Functions
        Section 14.3.  Windowing Functions
        Section 14.4.  Reporting Functions
        Section 14.5.  Summary
       Chapter 15.  SQL Best Practices
        Section 15.1.  Know When to Use Specific Constructs
        Section 15.2.  Avoid Unnecessary Parsing
        Section 15.3.  Consider Literal SQL for Decision-Support Systems
       Chapter 16.  XML
        Section 16.1.  What Is XML?
        Section 16.2.  Storing XML Data
        Section 16.3.  Generating XML Documents
        Section 16.4.  Summary
       Chapter 17.  Regular Expressions
        Section 17.1.  Elementary Regular Expression Syntax
        Section 17.2.  Advanced Function Options
        Section 17.3.  Advanced Regular Expression Syntax
       Chapter 18.  Model Queries
        Section 18.1.  Basic Elements of a Model Query
        Section 18.2.  Cell References
        Section 18.3.  Rules
        Section 18.4.  Iterative Models
        Section 18.5.  Reference Models
       Appendix A.  Oracle's Old Join Syntax
        Section A.1.  Old Inner Join Syntax
        Section A.2.  Old Outer Join Syntax
        Section A.3.  Advantages of the New Join Syntax