Database Development
Curriculum
Școala Informală de IT
Educație Informală S.A.
Tel: +40744-679.530
Web: www.scoalainformala.ro / www.informalschool.com
E-mail: info@scoalainformala.ro
Content
1. Introduction to T-SQL Querying
2. Writing SELECT Queries
3. Querying Multiple Tables
4. Sorting and Filtering Data
5. Working with SQL Server Data Types
6. Using DML to Modify Data
7. Using Built-In Functions
8. Grouping and Aggregating Data
9. Using Subqueries
10. Using Table Expressions
11. Using Set Operators
12. Executing Stored Procedures
13. Programming with T-SQL
14. Implementing Error Handling
15. Implementing Transactions
16. Interview Preparation
1
Module 1: Introduction to T-SQL Querying
This module introduces Transact SQL as the primary querying language of SQL Server.
It discusses the basic structure of T-SQL queries, the logical flow of a SELECT statement,
and introduces concepts such as predicates and set-based operations.
1.1. Introducing T-SQL
1.2. Understanding Sets
1.3. Understanding Predicate Logic
1.4. Understanding the Logical Order of Operations in SELECT statements
Module 2: Writing SELECT Queries
This module introduces the fundamentals of the SELECT statement, focusing on queries
against a single table.
2.1. Writing Simple SELECT Statements
2.2. Eliminating Duplicates with DISTINCT
2.3. Using Column and Table Aliases
2.4. Writing Simple CASE Expressions
Module 3: Querying Multiple Tables
This module explains how to write queries which combine data from multiple sources
in SQL Server. The module introduces the use of JOINs in T-SQL queries as a mechanism
for retrieving data from multiple tables.
3.1. Understanding Joins
3.2. Querying with Inner Joins
3.3. Querying with Outer Joins
3.4. Querying with Cross Joins and Self Joins
2
Module 4: Sorting and Filtering Data
This module explains how to enhance queries to limit the rows they return, and to
control the order in which the rows are displayed. The module also discusses how to
resolve missing and unknown results.
4.1. Sorting Data
4.2. Filtering Data with a WHERE Clause
4.3. Filtering with the TOP and OFFSET-FETCH Options
4.4. Working with Unknown and Missing Values
Module 5: Working with SQL Server Data Types
This module explains the data types SQL Server uses to store data. It introduces the
many types of numeric and special-use data types. It also explains conversions between
data types, and the importance of type precedence.
5.1. Introducing SQL Server Data Types
5.2. Working with Character Data
5.3. Working with Date and Time Data
Module 6: Using DML to Modify Data
This module describes the use of Transact-SQL Data Manipulation Language to
perform inserts, updates, and deletes to your data.
6.1. Inserting Data
6.2. Modifying and Deleting Data
3
Module 7: Using Built-In Functions
This module introduces the use of functions that are built into SQL Server, and will
discuss some common usages including data type conversion, testing for logical
results and nullability.
7.1. Writing Queries with Built-In Functions
7.2. Using Conversion Functions
7.3. Using Logical Functions
7.4. Using Functions to Work with NULL
Module 8: Grouping and Aggregating Data
This module introduces methods for grouping data within a query, aggregating the
grouped data and filtering groups with HAVING. The module is designed to help the
student grasp why a SELECT clause has restrictions placed upon column naming in the
GROUP BY clause as well as which columns may be listed in the SELECT clause.
8.1. Using Aggregate Functions
8.2. Using the GROUP BY Clause
8.3. Filtering Groups with HAVING
Module 9: Using Subqueries
This module will introduce the use of subqueries in various parts of a SELECT statement.
It will include the use of scalar and multi-result subqueries, and the use of the IN and
EXISTS operators.
9.1. Writing Self-Contained Subqueries
9.2. Writing Correlated Subqueries
9.3. Using the EXISTS Predicate with Subqueries
4
Module 10: Using Table Expressions
This module introduces T-SQL expressions which return a valid relational table,
typically for further use in the query. The module discusses views, derived tables,
common table expressions and inline table-valued functions.
10. 1. Using Derived Tables
10.2. Using Common Table Expressions
10.3. Using Views
10.4. Using Inline Table-Valued Functions
Module 11: Using Set Operators
This module introduces UNION, EXCEPT and INTERSECT operators.
11. 1. Writing Queries with the UNION Operator
11.2. Using EXCEPT and INTERSECT
11.3. Using APPLY
Module 12: Executing Stored Procedures
This module introduces the use of existing stored procedures in a T-SQL querying
environment. It discusses the use of EXECUTE, how to pass input and output parameters
to a procedure, and how to invoke system stored procedures.
12.1. Querying Data with Stored Procedures
12.2. Passing Parameters to Stored Procedures
12.3. Creating Simple Stored Procedures
12.4. Working with Dynamic SQL
5
Module 13: Programming with T-SQL
This module introduces T-SQL programming concepts and objects. It discusses batches,
variables, control of flow elements such as loops and conditionals, how to create and
execute dynamic SQL statements, and how to use synonyms.
13.1. T-SQL Programming Elements
13.2. Controlling Program Flow
Module 14: Implementing Error Handling
This module introduces the use of error handlers in T-SQL code. It will introduce the
difference between compile errors and run-time errors, and will cover how errors affect
batches. The module will also cover how to control error handling using TRY/CATCH
blocks, the use of the ERROR class of functions, and the use of the new THROW
statement.
14.1. Using TRY / CATCH Blocks
14.2. Working with Error Information
Module 15: Implementing Transactions
This module introduces the concepts of transaction management in SQL Server. It
will provide a high-level overview of transaction properties; cover the basics of
marking transactions with BEGIN, COMMIT and ROLLBACK.
15.1. Transactions and the Database Engine
15.2. Controlling Transactions
15.3. Isolation Levels
Module 16: Interview Preparation
16.1. How to present oneself during an IT interview
16.2. CV formatting tips