SQL in SQL Server Training Course

Duration

14 hours (usually 2 days including breaks)

Requirements

Basic computer skills

Overview

This SQL training course is for people who want to gain the necessary skills to extract and analyse data from any database and create reports. Course members will learn:

  • how to write SQL queries
  • what relational databases are and how we can use them
  • what are relations and how to create them
  • the structure of data
  • differences between T-SQL and other dialects
  • practical skills for writing queries

This SQL course deals with Microsoft T-SQL dialect. If you are interested in generic SQL, please see SQL Fundamentals course.

Course Outline

RDBMS (Relational DataBase Management System)

Relational Operators

SQL as Declarative Language

SQL Syntax

SQL Sublanguages DQL, DML, DDL, DCL

DQL (Data Query Language) in Detail

  • SELECT clause
  • Column aliases
  • Table aliases
  • Date types and Date functions
  • Group function
  • Table joins
  • JOIN clause
  • UNION operator
  • Nested queries
  • Correlated subqueries

DML (DataManipulationLanguage) Overview

  • Inserting rows (INSERT)
  • Inserting rows using subquery
  • Updating rows (UPDATE)
  • Deleting rows (DELETE)

DDL (Data Definition Language) Overview

  • Creating, altering and dropping objects (CREATE, ALTER, DROP)
  • Creating tables using subquery (CREATE TABLE …. AS SELECT…)

CONSTRAINTS Overview

  • NULL i NOT NULL
  • CONSTRAINT clause
  • ENUM type
  • SET type
  • PRIMARY KEY
  • UNIQUE
  • FOREIGN KEY
  • DEFAULT clause

Transactions Overview

  • COMMIT
  • ROLLBACK
  • SAVEPOINT
  • Implicit and explicit rollbacks and commits

T-SQL Dialects Overview

  • What is Transact-SQL
  • T-SQL and portability with other dialects (what to avoid)
  • Handling Date

SQL in Microsoft Access Training Course

Duration

14 hours (usually 2 days including breaks)

Requirements

Basic computer skills.

Overview

This SQL training course is for people who want to gain the necessary skills to extract and analyse data using Microsoft Access. Course members will learn:

  • how to write SQL queries
  • what relational databases are and how we can use them
  • what are relations and how to create them
  • the structure of data
  • differences between SQL dialects (Oracle, T-SQL, ANSI)
  • practical skills for writing queries

This SQL course deals with Microsoft Access dialect of SQL.

Course Outline

RDBMS (Relational DataBase Management System)

Relational Operators

SQL as Declarative Language

SQL Syntax

SQL Sublanguages DQL, DML, DDL, DCL

DQL (Data Query Language) in Detail

  • SELECT clause
  • Column aliases
  • Table aliases
  • Date types and Date functions
  • Group function
  • Table joins
  • JOIN clause
  • UNION operator
  • Nested queries
  • Correlated subqueries

DML (Data Manipulation Language) Overview

  • Inserting rows (INSERT)
  • Inserting rows using subquery
  • Updating rows (UPDATE)
  • Deleting rows (DELETE)

DDL (Data Definition Language) Overview

  • Creating, altering and dropping objects (CREATE, ALTER, DROP)
  • Creating tables using subquery (CREATE TABLE …. AS SELECT…)

CONSTRAINTS Overview

  • NULL i NOT NULL
  • CONSTRAINT clause
  • ENUM type
  • SET type
  • PRIMARY KEY
  • UNIQUE
  • FOREIGN KEY
  • DEFAULT clause

Transactions Overview

  • COMMIT
  • ROLLBACK
  • SAVEPOINT
  • Implicit and explicit rollbacks and commits

SQL Dialects Overview

  • MySQL
  • Microsoft Access and SQL Server
  • Oracle and PostgreSQL

ORACLE PL/SQL Fundamentals Training Course

Duration

21 hours (usually 3 days including breaks)

Requirements

The course is only suitable for those who have some knowledge of SQL.

Previous experience with an interactive computer system is desirable but not essential.

Overview

This 3 day course gives an introduction to ORACLE PL/SQL, an application development environment that enables the writing of stored procedures, functions and triggers using both SQL and PL/SQL commands.

The course takes the format of a workshop, with a mix of lecture, working examples and practical exercises. Although the content may be customised, at least 2 days are needed to cover the core elements.

Full course notes are provided along with sample database files, example SQL files and free software tools for use in accessing an ORACLE database.

Course Outline

Introduction

  • Aims and Objectives
  • Course Schedule
  • Introductions
  • Pre-requisites
  • Responsibilities

SQL Tools

  • Objectives
  • SQL Developer
  • SQL Developer – Connection
  • Viewing Table Information
  • Using SQL, SQL Developer – Query
  • SQL*Plus Login
  • Direct Connection
  • Using SQL*Plus
  • Ending the Session
  • SQL*Plus Commands
  • SQL*Plus Environment
  • SQL*Plus Prompt
  • Finding Information about Tables
  • Getting Help
  • Using SQL Files
  • iSQL*Plus, Entity Models
  • The ORDERS Tables
  • The FILM Tables
  • Course Tables Handout
  • SQL Statement Syntax
  • SQL*Plus Commands

What is PL/SQL?

  • What is PL/SQL?
  • Why Use PL/SQL?
  • Block Structure
  • Displaying a Message
  • Sample Code
  • Setting SERVEROUTPUT
  • Update Example, Style Guide

Variables

  • Variables
  • Datatypes
  • Setting Variables
  • Constants
  • Local and Global Variables
  • %Type Variables
  • Substitution Variables
  • Comments with &
  • Verify Option
  • && Variables
  • Define and Undefine

SELECT Statement

  • SELECT Statement
  • Populating Variables
  • %Rowtype Variables
  • CHR Function
  • Self Study
  • PL/SQL Records
  • Example Declarations

Conditional Statement

  • IF Statement
  • SELECT Statement
  • Self Study
  • Case Statement

Trapping Errors

  • Exception
  • Internal Errors
  • Error Code and Message
  • Using No Data Found
  • User Exceptions
  • Raise Application Error
  • Trapping Non-defined Errors
  • Using PRAGMA EXCEPTION_INIT
  • Commit and Rollback
  • Self Study
  • Nested Blocks
  • Workshop

Iteration – Looping

  • Loop Statement
  • While Statement
  • For Statement
  • Goto Statement and Labels

Cursors

  • Cursors
  • Cursor Attributes
  • Explicit Cursors
  • Explicit Cursor Example
  • Declaring the Cursor
  • Declaring the Variable
  • Open, Fetching the First Row
  • Fetching the Next Row
  • Exit When %Notfound
  • Close
  • For Loop I
  • For Loop II
  • Update Example
  • FOR UPDATE
  • FOR UPDATE OF
  • WHERE CURRENT OF
  • Commit with Cursors
  • Validation Example I
  • Validation Example II
  • Cursor Parameters,
  • Workshop
  • Workshop Solution

Procedures, Functions and Packages

  • Create Statement
  • Parameters
  • Procedure Body
  • Showing Errors
  • Describe a Procedure
  • Calling Procedures
  • Calling Procedures in SQL*Plus
  • Using Output Parameters
  • Calling with Output Parameters
  • Creating Functions
  • Example Function
  • Showing Errors
  • Describe a Function
  • Calling Functions
  • Calling Functions in SQL*Plus
  • Modular Programming
  • Example Procedure
  • Calling Functions
  • Calling Functions In An IF Statement
  • Creating Packages
  • Package Example
  • Reasons for Packages
  • Public and Private Sub-programs
  • Showing Errors
  • Describe a Package
  • Calling Packages in SQL*Plus
  • Calling Packages From Sub-Programs
  • Dropping a Sub-Program
  • Finding Sub-programs
  • Creating a Debug Package
  • Calling the Debug Package
  • Positional and Named Notation
  • Parameter Default Values
  • Recompiling Procedures and Functions
  • Workshop

Triggers

  • Creating Triggers
  • Statement Triggers
  • Row Level Triggers
  • WHEN Restriction
  • Selective Triggers – IF
  • Showing Errors
  • Commit in Triggers
  • Restrictions
  • Mutating Triggers
  • Finding Triggers
  • Dropping a Trigger
  • Generating an Auto-number
  • Disabling Triggers
  • Enabling Triggers
  • Trigger Names

Sample Data

  • ORDER Tables
  • FILM Tables
  • EMPLOYEE Tables

Dynamic SQL

  • SQL in PL/SQL
  • Binding
  • Dynamic SQL
  • Native Dynamic SQL
  • DDL and DML
  • DBMS_SQL Package
  • Dynamic SQL – SELECT
  • Dynamic SQL – SELECT Procedure

Using Files

  • Using Text Files
  • UTL_FILE Package
  • Write/Append Example
  • Read Example
  • Trigger Example
  • DBMS_ALERT Packages
  • DBMS_JOB Package

COLLECTIONS

  • %Type Variables
  • Record Variables
  • Collection Types
  • Index-By Tables
  • Setting Values
  • Nonexistent Elements
  • Nested Tables
  • Nested Table Initialisation
  • Using the Constructor
  • Adding to a Nested Table
  • Varrays
  • Varray Initialization
  • Adding Elements to a Varray
  • Multilevel Collections
  • Bulk Bind
  • Bulk Bind Example
  • Transactional Issues
  • BULK COLLECT Clause
  • RETURNING INTO

Ref Cursors

  • Cursor Variables
  • Defining REF CURSOR Types
  • Declaring Cursor Variables
  • Constrained and Unconstrained
  • Using Cursor Variables
  • Cursor Variable Examples

ORACLE SQL Fundamentals Training Course

Duration

14 hours (usually 2 days including breaks)

Requirements

The course is suitable for those who have some knowledge of SQL as well as those who are using ORACLE for the first time.

Previous experience with an interactive computer system is desirable but not essential.

Overview

This 2 day course gives an introduction to SQL Developer, SQL*Plus and to SQL, the Structured Query Language used to access a Relational Database and includes the new features of the latest version of ORACLE. The principles learnt may also be applied to databases as diverse as Microsoft SQL Server, MySQL, Access, Informix and DB2.

The course takes the format of a workshop, with a mix of lecture, working examples and practical exercises. Although the content may be customised, at least 2 days are needed to cover the core elements.

Full course notes are provided along with sample database files, example SQL files and free software tools for use in accessing an ORACLE database.

Course Outline

Introduction

  • Overview
  • Aims and Objectives
  • Sample Data
  • Schedule
  • Introductions
  • Pre-requisites
  • Responsibilities

Relational Databases

  • The Database
  • The Relational Database
  • Tables
  • Rows and Columns
  • Sample Database
  • Selecting Rows
  • Supplier Table
  • Saleord Table
  • Primary Key Index
  • Secondary Indexes
  • Relationships
  • Analogy
  • Foreign Key
  • Foreign Key
  • Joining Tables
  • Referential Integrity
  • Types of Relationship
  • Many to Many Relationship
  • Resolving a Many-to-Many Relationship
  • One to One Relationship
  • Completing the Design
  • Resolving Relationships
  • Microsoft Access – Relationships
  • Entity Relationship Diagram
  • Data Modelling
  • CASE Tools
  • Sample Diagram
  • The RDBMS
  • Advantages of an RDBMS
  • Structured Query Language
  • DDL – Data Definition Language
  • DML – Data Manipulation Language
  • DCL – Data Control Language
  • Why Use SQL?
  • Course Tables Handout

Data Retrieval

  • SQL Developer
  • SQL Developer – Connection
  • Viewing Table Information
  • Using SQL, Where Clause
  • Using Comments
  • Character Data
  • Users and Schemas
  • AND and OR Clause
  • Using Brackets
  • Date Fields
  • Using Dates
  • Formatting Dates
  • Date Formats
  • TO_DATE
  • TRUNC
  • Date Display
  • Order By Clause
  • DUAL Table
  • Concatenation
  • Selecting Text
  • IN Operator
  • BETWEEN Operator
  • LIKE Operator
  • Common Errors
  • UPPER Function
  • Single Quotes
  • Finding Metacharacters
  • Regular Expressions
  • REGEXP_LIKE Operator
  • Null Values
  • IS NULL Operator
  • NVL
  • Accepting User Input

Using Functions

  • TO_CHAR
  • TO_NUMBER
  • LPAD
  • RPAD
  • NVL
  • NVL2 Function
  • DISTINCT Option
  • SUBSTR
  • INSTR
  • Date Functions
  • Aggregate Functions
  • COUNT
  • Group By Clause
  • Rollup and Cube Modifiers
  • Having Clause
  • Grouping By Functions
  • DECODE
  • CASE
  • Workshop

Sub-Query & Union

  • Single Row Sub-queries
  • Union
  • Union – All
  • Intersect and Minus
  • Multiple Row Sub-queries
  • Union – Checking Data
  • Outer Join

More On Joins

  • Joins
  • Cross Join or Cartesian Product
  • Inner Join
  • Implicit Join Notation
  • Explicit Join Notation
  • Natural Join
  • Equi-Join
  • Cross Join
  • Outer Joins
  • Left Outer Join
  • Right Outer Join
  • Full Outer Join
  • Using UNION
  • Join Algorithms
  • Nested Loop
  • Merge Join
  • Hash Join
  • Reflexive or Self Join
  • Single Table Join
  • Workshop

Advanced Queries

  • ROWNUM and ROWID
  • Top N Analysis
  • Inline View
  • Exists and Not Exists
  • Correlated Sub-queries
  • Correlated Sub-queries with Functions
  • Correlated Update
  • Snapshot Recovery
  • Flashback Recovery
  • All
  • Any and Some Operators
  • Insert ALL
  • Merge

Sample Data

  • ORDER Tables
  • FILM Tables
  • EMPLOYEE Tables
  • The ORDER Tables
  • The FILM Tables

Utilities

  • What is a Utility?
  • Export Utility
  • Using Parameters
  • Using a Parameter file
  • Import Utility
  • Using Parameters
  • Using a Parameter file
  • Unloading Data
  • Batch Runs
  • SQL*Loader Utility
  • Running the Utility
  • Appending Data

SQL Fundamentals Training Course

Duration

14 hours (usually 2 days including breaks)

Requirements

Basic computer skills.

Overview

This SQL training course is for people who want to gain the necessary skills to extract and analyse data from any database and create reports. Course members will learn:

  • how to write SQL queries
  • what relational databases are and how we can use them
  • what are relations and how to create them
  • the structure of data
  • differences between SQL dialects (Oracle, T-SQL, ANSI)
  • practical skills for writing queries

This SQL course deals with generic ANSI SQL. It can be used in any database, including Oracle, MySQL, Microsoft Access, Microsoft SQL Server, DB2, Informix, PostgreSQL any other relational databases.

Course Outline

RDBMS (Relational DataBase Management System)

Relational Operators

SQL as Declarative Language

SQL Syntax

SQL Sublanguages DQL, DML, DDL, DCL

DQL (Data Query Language) in Detail

  • SELECT clause
  • Column aliases
  • Table aliases
  • Date types and Date functions
  • Group function
  • Table joins
  • JOIN clause
  • UNION operator
  • Nested queries
  • Correlated subqueries

DML (Data Manipulation Language) Overview

  • Inserting rows (INSERT)
  • Inserting rows using subquery
  • Updating rows (UPDATE)
  • Deleting rows (DELETE)

DDL (Data Definition Language) Overview

  • Creating, altering and dropping objects (CREATE, ALTER, DROP)
  • Creating tables using subquery (CREATE TABLE …. AS SELECT…)

CONSTRAINTS Overview

  • NULL i NOT NULL
  • CONSTRAINT clause
  • ENUM type
  • SET type
  • PRIMARY KEY
  • UNIQUE
  • FOREIGN KEY
  • DEFAULT clause

Transactions Overview

  • COMMIT
  • ROLLBACK
  • SAVEPOINT
  • Implicit and explicit rollbacks and commits

SQL Dialects Overview

  • MySQL
  • Microsoft Access and SQL Server
  • Oracle and PostgreSQL

Apache Spark SQL Training Course

Duration

7 hours (usually 1 day including breaks)

Requirements

  • Experience with SQL queries
  • Programming experience in any language

Audience

  • Data analysts
  • Data scientists
  • Data engineers

Overview

Spark SQL is Apache Spark’s module for working with structured and unstructured data. Spark SQL provides information about the structure of the data as well as the computation being performed. This information can be used to perform optimizations. Two common uses for Spark SQL are:
– to execute SQL queries.
– to read data from an existing Hive installation.

In this instructor-led, live training (onsite or remote), participants will learn how to analyze various types of data sets using Spark SQL.

By the end of this training, participants will be able to:

  • Install and configure Spark SQL.
  • Perform data analysis using Spark SQL.
  • Query data sets in different formats.
  • Visualize data and query results.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.

Course Outline

Introduction

Overview of Data Access Approaches (Hive, databases, etc.)

Overview of Spark Features and Architecture

Installing and Configuring Spark

Understanding Dataframes in Spark

Defining Tables and Importing Datasets

Querying Data Frames using SQL

Carrying out Aggregations, JOINs and Nested Queries

Uploading and Accessing Data

Querying Different Types of Data

  • JSON, Parquet, etc.

Querying Data Lakes with SQL

Troubleshooting

Summary and Conclusion

SQL For Data Science and Data Analysis Training Course

Duration

14 hours (usually 2 days including breaks)

Requirements

  • An understanding of  databases
  • Experience with SQL an asset.

Audience

  • Business analysts
  • Software developers
  • Database developers

Overview

This instructor-led, live training (online or onsite) is aimed at software developers, managers, and business analyst who wish to use big data systems to store and retrieve large amounts of data.

By the end of this training, participants will be able to:

  • Query large amounts of data efficiently.
  • Understand how Big Data system store and retrieve data
  • Use the latest big data systems available
  • Wrangle data from data systems into reporting systems
  • Learn to write SQL queries in:
    • MySQL
    • Postgres
    • Hive Query Language (HiveQL/HQL)
    • Redshift 

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.

Course Outline

Lesson 1 – SQL basics: 

  • Select statements
  • Join types
  • Indexes
  • Views
  • Subqueries
  • Union
  • Creating tables
  • Loading data
  • Dumping data
  • NoSQL

Lesson 2 – Data Modeling:

  • Transaction based ER systems
  • Data warehousing 
  • Data warehouse models
    • Star schema
    • Snowflake schemas
  • Slowly changing dimensions (SCD)
  • Structured and non-structured data
  • Different table type storage engines:
    • Column based
    • Document-based
    • In Memory

Lesson 3 – Index in the NoSQL/Data science world

  • Constraints (Primary)
  • Index-based scanning
  • performance tuning

Lesson 4 – NoSQL and non-structured data

  • When to use NoSQL
  • Eventually consistent data
  • Schema on read vs. Schema on write

Lesson 5 – SQL for data analytics

  • Windowing function
  • Lateral Joins
  • Lead & Lag

Lesson 6 – HiveQL

  • SQL Support
  • External and Internal Tables
  • Joins
  • Partitions
  • Correlated subqueries
  • Nested queries
  • When to use Hive

Lesson 7 – Redshift

  • Design and structured
  • Locks and shared resources
  • Postgres differences
  • When to use redshift

A Python project with coding framework and unit testing

Python basics and real world coding framework – organizing code, logging, error handling, config file, unit testing

Requirements

  • Basic programming skills and SQL knowledge required

Description

Learn how to code and unit test Python applications in a real world project. Go beyond the basics by solving a practical use case step by step. This course is designed for Python beginners who want to transition for academic background to a real world developer role !

Course Project :

You will be building a Python application to read data from files and store the data into PostgreSQL database. You will be creating REST endpoints using which external users will interact with your application data. All the industry standard best practices in terms of logging, error handling, config file, code structuring will be used in the application.

Course structure :

  • Python (3.9) and PyCharm IDE installation
  • Python basics – Get started with basic Python data types including List, Tuple and Dictionary
  • Organizing code with Classes and Modules – Understand core concepts of classes and packages
  • Python logging – Implement logging using basic config and file config
  • Python error handling – Learn how to handle exceptions.
  • Python PostgreSQL database interaction – Understand how to read and write to PostgreSQL using psycopg2
  • Create REST API using Python – Learn to create APIs using Python Flask framework
  • Reading configuration from property file – Learn how to avoid hardcoding of configurable properties
  • Unit testing – Learn to test your application using unittest package
  • Unit testing – Learn to test your application using PyTest package

You will learn the above concepts by building a real world file processing application. No prior Python knowledge required.

Prerequisites :

  • Basic programming skills
  • Basic knowledge of SQL queries

Who this course is for:

  • Python beginners who are getting ready for real world developer role

Course content

8 sections • 31 lectures • 1h 55m total lengthExpand all sections

Introduction5 lectures • 7min

  • Introduction01:37
  • What is Python?01:02
  • Installing Python00:46
  • Installing PyCharm02:28
  • Creating a project in the main Python environment01:19

Python getting started3 lectures • 16min

  • Python basics09:27
  • Python dictionary04:42
  • Python List and Tuple02:20

Organizing code, logging and error handling6 lectures • 27min

  • Structuring code with classes and functions08:12
  • Initializing variables with a constructor04:37
  • Logging using basic config03:48
  • Logging using file config04:13
  • Having multiple loggers in an application03:47
  • Error handling with try and except blocks02:36

Reading configuration and database interaction5 lectures • 21min

  • Reading properties from a configuration file03:16
  • Installing PostgreSQL03:55
  • Reading from and writing to Postgres08:58
  • Organizing code further03:16
  • Handling the unique key constraint error01:50

Reading data from a JSON file and storing it in database2 lectures • 8min

  • Reading data from a JSON file02:34
  • Writing JSON file data to PostgreSQL05:39

Creating REST APIs4 lectures • 15min

  • What is REST?01:13
  • Understanding how REST will be used in the application01:01
  • Creating a REST API to fetch course list07:37
  • Creating a REST API to store course information05:24

Unit testing3 lectures • 14min

  • Python unittest package03:35
  • Data and error testing04:49
  • Unit testing with PyTest05:24

Where to go from here?3 lectures • 6min

  • Where to go from here?00:07
  • Preview – Data Engineering – Hadoop and Spark03:16
  • Preview – Machine Learning Deep Learning Model deployment introduction02:54

A Python project with coding framework and unit testing

Python basics and real world coding framework – organizing code, logging, error handling, config file, unit testing

Requirements

  • Basic programming skills and SQL knowledge required

Description

Learn how to code and unit test Python applications in a real world project. Go beyond the basics by solving a practical use case step by step. This course is designed for Python beginners who want to transition for academic background to a real world developer role !

Course Project :

You will be building a Python application to read data from files and store the data into PostgreSQL database. You will be creating REST endpoints using which external users will interact with your application data. All the industry standard best practices in terms of logging, error handling, config file, code structuring will be used in the application.

Course structure :

  • Python (3.9) and PyCharm IDE installation
  • Python basics – Get started with basic Python data types including List, Tuple and Dictionary
  • Organizing code with Classes and Modules – Understand core concepts of classes and packages
  • Python logging – Implement logging using basic config and file config
  • Python error handling – Learn how to handle exceptions.
  • Python PostgreSQL database interaction – Understand how to read and write to PostgreSQL using psycopg2
  • Create REST API using Python – Learn to create APIs using Python Flask framework
  • Reading configuration from property file – Learn how to avoid hardcoding of configurable properties
  • Unit testing – Learn to test your application using unittest package
  • Unit testing – Learn to test your application using PyTest package

You will learn the above concepts by building a real world file processing application. No prior Python knowledge required.

Prerequisites :

  • Basic programming skills
  • Basic knowledge of SQL queries

Who this course is for:

  • Python beginners who are getting ready for real world developer role

Course content