logo
Linux User
OpenSource Apache Embedded C Linux MySQL Perl PHP Samba

Mastering SQL - A 3 Day Course

Synopsis

A short introduction to the ANSI standard SQL database query language. Designed to provide a good grounding in SQL database design and use.

Suitable For

Software developers who need to develop good generic (i.e. standards-based) SQL skills for use in application programming.

Database administrators with experience of proprietary SQL databases, but who need to improve their skills in and knowledge of generic SQL.

Software developers who need standards-oriented MySQL training in the UK.

Prerequisites

  • Advanced computer literacy
  • Some knowledge of database design issue
  • User-level experience of interacting with a relational database, if only via a 'point-and-click' GUI

Delivery

This is an instructor-led course which provides extensive hands-on practical exercises in the topics it covers.

At present the course is designed primarily for in-house delivery to corporate groups. This usually takes place on-site, i.e. at the premises of the purchasing company.

Arrangements can be made for off-site training at a range of facilities, although this can incur costs which have to be added to our normal charges for tuition and course materials.

  • N.B. GBdirect write fully-bespoke courses for clients in various aspects of database design and deployment. If you have such a requirement and the budget for it, please contact our course developers for advice and support.

Contents

What is SQL?

  • A simple SQL statement
  • SQL-92
  • Differences between SQL dialects
  • Choosing a database

Relational databases

  • Relational vs. flat file databases
  • Standardization
  • Normalization
  • First, second, and third normal forms

SQL Foundations

  • Database components
  • Creating a table
  • Table statements
  • Understanding indexes
  • Creating indexes
  • Indexes and engines
  • The INSERT statement
  • The SELECT statement

Querying a table

  • Creating the table
  • Data types
  • INSERTs
  • SELECTs
  • Adding rows
  • The UPDATE statement
  • The problem with UPDATEs
  • Using the WHERE clause with UPDATE
  • The DELETE statement
  • The ALTER statement

The SELECT statement

  • Filtering SELECTs
  • WHERE in more detail
  • LIKE
  • INTO
  • Sorting information
  • ORDER BY
  • Ordering multiple columns
  • Ascending and descending order

Mastering the SELECT statement

  • The GROUP BY clause
  • Sorting or GROUP BY?
  • Sub-SELECTs
  • Sub-SELECT options
  • EQUALS
  • DISTINCT

Joins

  • What are joins?
  • Why you need joins
  • Creating a simple join
  • INNER joins
  • OUTER joins
  • LEFT joins
  • RIGHT joins
  • FULL joins
  • UNION

Key SQL Functions

  • Strings and substrings
  • UPPER and LOWER
  • LENGTH
  • TRIM
  • Arithmetic functions
  • SUM
  • AVG
  • MIN and MAX
  • Date functions
  • DATEADD
  • DATEDIFF
  • DATEPART
  • GETDATE
  • SYSDATE
  • TODAY

Views

  • What they are and how they work
  • Abstraction
  • Selecting from a view
  • Creating a view
  • Updates with views
  • Secure views

The MySQL RDBMS

  • Compilation of source code
  • Installation
  • Configuration
  • MySQL extensions
  • Optimizing SELECTs, UPDATEs, INSERTs and DELETEs
  • Table types
  • Portability
  • Tuning mysqld
  • OS tuning
  • Hardware tuning
  • Drivers and interfaces (Perl, PHP, C++, etc)